메모장에서 와일드 카드 검색 / 바꾸기 사용하기 ++


17

내 문제는 다음과 같습니다. .txt 파일에서 다음과 같이 수천 개의 구문 인스턴스를 찾아서 바꿔야합니다.

((a053007djfgspwdf 참조)

또는

((a053007djfgspwdf) 및 (a54134xsedgeg) 참조)

또는

((a053007djfgspwdf), (a9554xsdfgsdfg) 및 (a54134xsedgeg 참조))

시작 사이 많은 다양성이있다 (참조 (A 및 종료 )) 텍스트 문자열. 정규식을 사용하여 메모장 ++에서 설정할 수 있습니까? 그렇다면 어떻게해야합니까? 감사!

답변:


17

죄송합니다. 다른 답변은 복잡합니다. (원래 포스터에 대한 무례 함은 없습니다.)

이것이 항상 첫 번째 검색 결과로 표시되므로 이것을 다음에 추가하겠습니다.

  1. 검색 / 바꾸기 대화 상자를 엽니 다 ( CTRL+ F다음 바꾸기 탭)
  2. 하단의 "일반 표현식"을 체크하십시오
  3. 와일드 카드로. *를 사용하십시오.

예를 들어, abp = "1314", abp = "1313", abp = "1312"등의 모든 인스턴스를 제거하고 싶었습니다 (기본적으로 숫자가 모두 다르기 때문에 와일드 카드를 제거하려는 이유).

바꾸기 대화 상자에서 :

다음에서 찾기 abp=".*"
:

(당신은 그 따옴표 안의 것을 아무것도 제거하기 위해 아무것도 대체하지 않습니다)

출처 : https://www.organicweb.com.au/17226/general-technology/notepad-wildcard/


15

예, 그럴 수 있습니다! Notepad ++에는 모든 RegEx 교체 요구에 대해 선택할 수있는 RegEx 검색 모드가 있습니다.

아래 예제 (see (a...))는 줄 바꿈을 제외한 모든 것을 대체하는 기본 예제 입니다. RegEx를 수정하거나 필요에 맞게 직접 작성해야 할 수도 있습니다. 여기 실험에 당신을 함께 도울 수있는 좋은 장소.

정규식 : \(see \(a.+\)\)

일치하는 문자열 :

(see (a053007djfgspwdf))
(see (a053007djfgspwdf) and (a54134xsedgeg))
(see (a053007djfgspwdf), (a9554xsdfgsdfg) and (a54134xsedgeg))


교체품으로 교체 ((a ...) 참조)


감사! 첫 번째 예제 (a053007djfgspwdf 참조) 의 인스턴스를 찾았 지만 다른 예제는 찾지 못했습니다. 그래도 좋은 출발입니다. 나는 내가 할 수있는 일을보기 위해 그것을 가지고 놀 것이다. 추가 제안이 있으시면 대단히 감사하겠습니다. 다시 감사합니다.
Michael Tuck

당신은 클릭나요 모두 바꾸기 또는 클릭 계속 교체 사용하는 것과 비슷 경기 순환에 다음 찾기 ? 찾고있는 텍스트 만 시작 (see (a하고 끝나야 ))합니까? 단일 괄호 \)(\)|)끝나는 문자열이 있는 경우 마지막 을 캡처 그룹 으로 바꾸어 ))"or"로 끝나는 문자열을 일치 시킬 수 있습니다 ).
one.time

몇 번의 교체를 시도한 다음 모두 교체를 시도했습니다. 그 후, 검색 문자열은 아무것도 찾지 못했습니다. 모두에 대한 텍스트는 다음과 같습니다. ( 다양한 텍스트 참조) 오타를 제외하고 단일 괄호가있는 문자열은 없습니다.
Michael Tuck

(\(see \(a|\(a)([^\)]+)\)(\)|)질문의 문자열과 일치 하는 대체 RegEx로 답변을 업데이트했습니다 .
one.time

LOL 응답을 편집하는 동안 답변을 업데이트했습니다. 나는 새로운 것을 시도 할 것이다.
Michael Tuck

1

이 패턴을 시도 \(see \(a(.*)\)하고 ".와 일치하는 줄 바꿈"을 선택 취소하고 "바꾸기"를 선택했는지 확인하십시오.


1

이것들 중 일부가 이해하기에는 너무 깊었으므로, 모든 해결책을 읽은 후 내가 한 일을 보여주고 더 잘 이해하기 위해 더 많은 것을 보여 드리겠습니다. (이것은 간단한 접근법이며 최고가 아닐 수도 있습니다)

전체 웹 페이지에서 모든 그림 요소 를 제거하고 싶었습니다 . 그림 2.1, 그림 1.1, 요법.

그것은 :

<p class="td1-content b8"><span class="stepNumber">2.  </span>Select Memo from the toolbar<br><b>Figure 2.1</b></p>

나는 그것이 끝나기를 바랐다.

 <p class="td1-content b8"><span class="stepNumber">2.  </span>Select Memo from the toolbar</p>

그러나 각각

그림 번호가 다르므로 숭고한 텍스트 2에서 이것을 사용했습니다.

  1. Ctrl H
  2. Sublime text 2의 오른쪽 하단에있는 ". *"기호를 클릭하십시오 (정규식).
  3. 입력 <br><b>Figure.*</b>
  4. 다음과 같이 교체하십시오 : -left blank

이것은 내 모든 인스턴스를 그 안의 숫자로 대체했습니다. 숫자가 사용 된 곳에서. *를 사용했습니다. 도움이 되었기를 바랍니다.


0

필요한 정확한 정규식 은 다음과 같습니다.

\(see \(\w+\)((, \(\w+\))*( and \(\w+\)))?\)

예를 들면 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

현재 문서에서 모두 찾기를 선택 하면 결과는 다음과 같습니다.

여기에 이미지 설명을 입력하십시오

대신 필요에 따라 바꾸기 를 사용할 수 있습니다 .

a정규식에 를 포함하려면 다음을 사용할 수 있습니다.

\(see \(a\w+\)((, \(a\w+\))*( and \(a\w+\)))?\)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.