2013-03-24 1 views
1

나는 "ABC", "드"및 "MNOP"와 일치,이 표현을정규식 단어 경계 (는 B) 매칭과 공백

\b[A-Za-z]+\b 

있습니다. 하지만 "mnop"과 만 일치 시키길 원합니다. 내가 어떻게 할 수 있니?

+2

단어 경계가 아닌 구분 기호로 공백과 구두점을 사용할 수도 있습니다. –

+1

당신은 언어/도구를 지정해야합니다. 정규식 구현은 언어에 따라 달라지며, 둘러보기를 위해 – Anirudha

답변

7

\b은 단어 경계입니다.

그래서, \b 당신은 대신

(?<=\s|^)[a-zA-Z]+(?=\s|$) 
-------- --------- ------ 
    |   |  |->match only if the pattern is followed by a space(\s) or end of string/line($) 
    |   |->pattern 
    |->match only if the pattern is preceded by space(\s) or start of string\line(^) 
+0

+1입니다. –

5

\b(?:(?<!\w)(?=\w)|(?<=\w)(?!\w)) 뜻이 정규식을 사용할 수 있습니다 word

제외하고 아무것도 [^a-zA-Z0-9_]\b체크 유사하다. 글자와 @ 사이의 위치와 일치합니다.

당신은 쓸 수 있습니다 :

(?<!\S)[A-Za-z]+(?!\S) 

(?!\S)하는 (?=\s|$)에 해당합니다.