태그 보관물: sublime-text-3

sublime-text-3

숭고한 텍스트 찾기 모든 문자 바꾸기 *** (). toString ())과 같은 것을

어떤 문자를 그 자리에 넣을 수있는 특수 문자를 사용하여 찾고 바꾸는 방법이 있습니까?

이것이 의미하는 바는 다음과 같은 텍스트가 있다는 것입니다.

setI0100(mds3a1.getI0100().toString());
setI0200(mds3a1.getI0200().toString());
setI0300(mds3a1.getI0300().toString());
setI0400(mds3a1.getI0400().toString());
setI0500(mds3a1.getI0500().toString());
setI0600(mds3a1.getI0600().toString());
setI0700(mds3a1.getI0700().toString());
setI0800(mds3a1.getI0800().toString());
setI0900(mds3a1.getI0900().toString());
setI1100(mds3a1.getI1100().toString());
setI1200(mds3a1.getI1200().toString());
setI1300(mds3a1.getI1300().toString());

(mds3a1.getI *** (). toString ())과 같은 것을 사용하여 바꾸고 싶었습니다. 첫 줄 뒤의 모든 줄의 끝을 바꿉니다.

*는 모든 문자와 동일 할 수 있습니다. 위의 모든 줄의 끝을 모두 정확히 동일하지는 않지만 대체 할 수 있습니다. 한 줄은 다음과 같습니다.

Before:
    setI0100(mds3a1.getI0100().toString());
After:
    setI0100

다른 프로그램에서 비슷한 기능을 보았지만이 동작의 단어가 정확히 무엇인지 잘 모르겠습니다.

편집 :
결국 @DavidPostill이 지적한 것처럼 정규 표현식을 찾고있었습니다.

내가 원하는 것을하기 위해 나는 다음과 같이 끝났다.

find: (\(mds3a1.getJ)....+(().toString\(\)\);)
replace:

첫 줄을 포함하지 않을 때까지 각 줄의 텍스트를 남겨 둡니다.

숭고한 텍스트로 정규식을 사용하려는 사람이라면 여기에서 내가 찾은 좋은 리소스가 있습니다. https://github.com/dmikalova/sublime-cheat-sheets/blob/master/cheat-sheets/Regular%20Expressions.cheatsheet



답변

MattDMo 답변이 원하는 결과에 대한 올바른 패턴이 아닌 것 같습니다. 더 우아한 솔루션을 위해 내가 한 일은 다음과 같습니다.

숭고한 텍스트 2 열기

블록을 붙여 넣습니다.

setI0100(mds3a1.getI0100().toString());
setI0200(mds3a1.getI0200().toString());
setI0300(mds3a1.getI0300().toString());
setI0400(mds3a1.getI0400().toString());
setI0500(mds3a1.getI0500().toString());
setI0600(mds3a1.getI0600().toString());
setI0700(mds3a1.getI0700().toString());
setI0800(mds3a1.getI0800().toString());
setI0900(mds3a1.getI0900().toString());
setI1100(mds3a1.getI1100().toString());
setI1200(mds3a1.getI1200().toString());
setI1300(mds3a1.getI1300().toString());

찾기> 바꾸기 ( CTRL+ H)

정규식 사용 버튼 ( Alt+ R)

무엇을 찾다: \(.*

다음으로 교체 : [ 문자 없음 ]

모두 바꾸기를 누릅니다.

끝난

결과는 당신이 요구 한 것입니다 :

Before:
    setI0100(mds3a1.getI0100().toString());
After:
    setI0100

정규식 분석 :

\((캐릭터를 일치시키고 탈출하십시오 .

. 단일 문자와 일치하십시오.

* 선행 문자를 0 번 이상 일치시킵니다.


답변

찾기 대화 상자에서 정규식 검색을 켜고 다음 패턴을 사용하십시오.

^(.*?)(?=\()

이것은 줄의 시작 부분 ( ^)에서 시작한 다음 캡처하지 (.*?)않는 긍정적 인 미리보기 ( (?=\()) 까지 모든 문자 ( ) 를 캡처합니다 .


답변