줄을 바꾸되 일부는 메모장에 보관하세요 ++

줄을 바꾸되 일부는 메모장에 보관하세요 ++

Notepad++를 사용하여 많은 양의 코드를 찾거나 바꾸고 싶습니다.

나는 다음을 많이 가지고 있습니다:

각도[]={6.2744589,5.4066987,1.4066987};

3가지 값으로. 첫 번째와 두 번째 값을 모두 0으로 설정하고 세 번째 위치에 값을 유지해야 합니다. S

각도[]={6.2744589,5.4066987,1.4066987};

에게

각도[]={0,0,1.4066987};

감사해요!

답변1

이는 Notepad++에서 정규식(정규식) 검색 및 바꾸기를 사용하여 수행할 수 있습니다.

찾다:angles\[\]={\d+\.\d+,\d+\.\d+,(\d+\.\d+)};

다음으로 교체:angles[]={0,0,\1}

위의 표현식에서는 대괄호를 이스케이프 처리하므로 백슬래시()가 있고 세 번째 그룹은 캡처 그룹(괄호 사이)입니다. 결국 우리는 첫 번째와 두 번째 그룹에 대한 대체를 수행하고 세 번째 그룹은 원래 값( \1캡처된 값이라고 함)이 됩니다.

스크린샷 샘플을 첨부하고 있습니다.

메모장++ 정규식 바꾸기

답변2

  • Ctrl+H
  • 무엇을 찾다:\bangles\[\]=\{\K[^,]+,[^,]+
  • 다음으로 교체:0,0
  • Replace all

설명:

\b          : word boundary, to be sure to match angles but not somethingangles
angles      : literally angles
\[\]=\{     : literally []=, brackets have to be escaped as they have special meaning in regex
\K          : Forget all we have seen until this point
[^,]+       : 1 or more any character that is not a comma, that matches also negative values
,           : a comma
[^,]+       : 1 or more any character that is not a comma
  • 정규식 확인
  • 확인하지 마세요. matches newline

주어진 예에 대한 결과:

angles[]={0,0,1.4066987};

관련 정보