2010-02-21 7 views
0

편집 : 메모장 ++의 정규식 엔진에 문제가있었습니다. 정규 표현식은 Python에서 잘 작동합니다.이 정규 표현식이 Notepad ++에서 작동하지 않는 이유는 무엇입니까?

메모장에서 작업하고 있습니다. ++.

* ACERO : 욕실 라 Estatua 드 Gabomba
** 흡수기 PV 드 않은 enemigo

나는 (당신이 궁금하다면, 그것은 게임에 대한 스페인 가이드의)이 변환 것 정규 표현식을 만들려고

==== ACERO의 ====
* 욕실 라 Estatua 드 Gabomba
* 흡수기 PV 않은 enemigo 드

: 여기에

16,

나는이 함께했다, 그러나 그것은 텍스트와 일치하지 않습니다

\*([^:]+): ([\w ]+)\n\*\*([^\n]+) 

내가 뭔가를 분명 실종을?

+1

Mac OS X의 TextMate와 일치합니다. –

+0

줄 바꿈 문제 일 수 있습니다. 대신 Windows의'\ r \ n'을 사용해 보셨습니까? – Gumbo

+0

@robert : 예, 파이썬에서 작동하도록했습니다. 메모장 ++에서 문제가되는 것 같습니다. 나는 왜 여기있는 대답이 삭제 되었는가를 잘 모르지만, 오 잘. 감사. – Javier

답변

4

메모장 ++는 정규식 모드에서 줄 바꿈을 찾을 수 없습니다. 줄 바꿈을 예를 들어 |으로 바꾸고 확장 모드에서 새 문자열에 정규식을 적용한 다음 |을 줄 바꿈으로 바꿔야합니다.

3

정규 표현식이 맞습니다. \*([^:]+): ([\w ]+)\*\*([^\n]+)을 별도로 검색하면 일치하게됩니다.

메모장 + +는 여러 줄의 정규 표현식을 지원하지 않습니다 (신틸라는 그렇지 않기 때문에). Ctrl + F에는 내장 대화 상자가 표시되고 Ctrl + R에는 더 많은 옵션이있는 TextFX 대화 상자가 표시됩니다. 그러나 TextFX는 여러 행 검색을 지원하지 않습니다.

0

위의 두 가지 대답에 대한 또 다른 옵션으로 TextPad은 POSIX 정규식 구문 (여러 줄 포함)을 지원합니다.

것은 TextPad를이 POSIX를 사용하도록 설정하려면 구성 -> 환경 설정 -> 편집기 -> "사용 POSIX 정규 표현식 구문"

나는 몇 년 동안 TextPad를 사용 후 ++ 자신을 메모장을 선호하지만 항상 내 시스템에 TextPad를 유지 여러 줄의 정규 표현식과 잘하는 몇 가지 것들을 포함하고 있습니다.

관련 문제