Textpad 또는 Notepad++에서 모든 정규식 일치 항목을 목록으로 내보내기

Textpad 또는 Notepad++에서 모든 정규식 일치 항목을 목록으로 내보내기

Textpad 또는 Notepad++에는 정규식 찾기에 대한 모든 일치 항목을 단일 목록으로 내보내는 옵션이 있습니까?

큰 텍스트 파일에서 정규 표현식을 사용하여 태그(% %로 묶인 단어)를 검색하고 %\< and \>%있으며 Excel을 사용하여 중복 항목을 제거하고 고유 태그 목록을 얻을 수 있도록 모든 일치 항목을 단일 목록으로 원합니다.

답변1

다음을 사용하여 이를 달성할 수 있습니다.역참조Notepad++의 찾기 및 표시 기능.

  1. 정규식(예: )을 사용하여 일치하는 항목을 찾아 %(.*?)%로 바꾸면 \n%\1%\n별도의 줄에 대상 단어가 표시됩니다(즉, 일치하는 단어가 두 개 이상 있는 줄이 없습니다).

  2. 검색-->찾기-->표시 기능을 사용하여 정규식으로 각 줄을 표시하고 %(.*?)%'를 선택하는 것을 기억하세요.북마크 라인' 텍스트를 표시하기 전에

  3. 검색-->북마크-->표시되지 않은 줄 제거를 선택합니다.
  4. 나머지 텍스트를 저장합니다. 필수 목록입니다.

답변2

이거 하는거야?~에메모장++는 필수 요구 사항인가요? Windows 또는 일부 Unix를 사용하고 계십니까? Windows를 사용하는 경우 명령 프롬프트에서 부분적으로 수행할 수 있습니다.

findstr /r "%[az].*[az]% %[az]%"your_file>새로운 파일

findstr막연하게 에서 영감을 받았기 grep때문에 이것은새로운 파일 모두 포함됩니다윤곽귀하의 검색 기준과 일치합니다. 그런 다음 Notepad++를 사용하여 원하지 않는 텍스트(첫 번째 %의 왼쪽과 두 번째 %의 오른쪽)를 제거할 수 있습니다.


물론 Unix를 사용하는 경우에는 sed. 그리고 GNU가 있다면 grep(즉, Linux를 사용한다면) grep -o.

답변3

일치하는 정규 표현식을 새 탭의 새 파일에 복사할 수 있는 Notepad++ 플러그인이 있습니다. 정규식추출

현재 문서에서 일부 텍스트를 추출하거나 일부 추가 설정(예: 대소문자 변환)이 있는 위치에서 모든 파일을 추출할 수 있는 Notepad++용 플러그인을 찾지 못했기 때문에 직접 만들어 보기로 결정했습니다. (...) 플러그인 인터페이스는 매우 간단합니다 (...). (...) "찾기", "바꾸기" 및 "마스크" 필드는 C++11 정규식 구문을 사용합니다. 파일 추출은 현재 UTF8 파일에 대해서만 작동합니다.

편집하다 질문에 맞는 대화 입력

여기에 이미지 설명을 입력하세요

이미지에서 대화 상자를 채우는 방법을 볼 수 있습니다. 나는 단어에 공백 등이 포함되지 않고 \w와 일치하는 문자만 포함한다고 가정합니다. 특히:

  • 백분율 문자 없이 단어를 선택할 수 있도록 하려면 한 쌍의 괄호를 사용하십시오.
  • 옵션을 선택하세요교체로 추출, 첫 번째 일치 항목을 선택합니다. 그렇지 않으면 $1, $2 등의 열 형식 출력을 얻게 됩니다.
  • 확인하다$& 건너뛰기 ...전체 일치 항목을 제외합니다.
  • 확인하다고유한 필터각 일치 항목을 한 번만 보고합니다.
  • 딸깍 하는 소리발췌결과 얻기를 선택합니다. (찾다일치하는 항목만 찾고 보고하지는 않습니다.)

답변4

대신 온라인 솔루션에 관심이 있는 사람이 있다면(notepad++ 플러그인이 64비트에서 작동하지 않기 때문에) 시도해 볼 수 있습니다.몰비오툴즈추가 줄 없이 또는 줄을 사용하여 정규식을 완전히 추출할 수 있습니다.

관련 정보