Notepad++ 교체가 정규 표현식에서 작동하지 않습니다.

Notepad++ 교체가 정규 표현식에서 작동하지 않습니다.

편집하다

작동해야 한다는 증거:http://regexr.com?30pf2


나는 모든 발생을 대체하려고 노력하고 있습니다, 따옴표 안에 있지 않은 것~

20,72275,Epidurography,1
21,72285,X-Ray C/T Spine Disk,1
22,72291,"Perc Vert/Sacroplasty, Fluor",1
23,72292,"Perc Vert/Sacroplasty, Ct",1

된다

20~72275~Epidurography~1
21~72285~X-Ray C/T Spine Disk~1
22~72291~"Perc Vert/Sacroplasty, Fluor"~1
23~72292~"Perc Vert/Sacroplasty, Ct"~1

내 Regex는 매력적으로 작동하지만 찾은 값을 대체할 수 없는 것 같습니다. Notepad++는 교체할 쉼표를 강조 표시하지만바꾸다단추.

무엇을 찾다:(,)(?=(?:[^"]|"[^"]*")*$)

다음으로 교체:~

나는 어떻게든 예약되어 있다고 생각하여 다른 값을 시도했지만 ~다른 모든 문자나 문자 조합도 작동하지 않는 것 같습니다. 바라건대 이것은 단지 나의 일부 감독의 결과일 뿐입니다. 어떤 도움이라도 주시면 감사하겠습니다.

Notepad++ v6.1.1을 사용하고 있습니다.

감사해요! NotePad++ 스크린샷

정규식https://stackoverflow.com/questions/632475/regex-to-pick-commas-outside-of-quotes

답변1

이는 Notepad++의 RegEx 엔진(버그 보고서).

너비가 0인 둘러보기 어설션을 사용할 때바꾸다단순히 효과가 없습니다!

예를 들어, 문자열 T(?=E)로 대체하면 동일한 동작이 나타납니다 .BTEST

클릭모두 다 바꿔이 문제가 해결될 때까지 해결 방법으로 사용됩니다.

답변2

현재 파이프 |기호는 notepad++에서 지원되지 않습니다.

최신 버전은 RegEx에서 Notepad 10.1.1지원됩니다 .|

관련 정보