2012-10-24 3 views
2

을 I는 입력 문자열이 있습니다정규 표현식 - 볼 - 뒤에

left/1234567890 

정규 표현식 : 나는 그런 결과를 얻으려면

(left(?<=/)[0-9]{10}?) 

: 1234567890가 그러나이 작동하지 않습니다. 비록

, 다음 입력 문자열 :

/1234567890 

다음 정규식 :

((?<=/)[0-9]{10}?) 

예상대로 결과를 얻을 : 당신이 left을 포함하지 않았기 때문에 1234567890

답변

6

이것은 당신의 lookbehind에 :

((?<=left/)[0-9]{10}?) 

첫 번째 예에서는 left과 일치하고 정규 표현식 엔진이 슬래시를 아직 전달하지 않았기 때문에 정규 표현식 엔진의 '포인터'가 t/ 사이이므로 lookbehind가 일치하지 않을 수 있습니다.