2012-11-05 3 views
1

저는 몇 시간 동안 Regex 튜토리얼을 살펴 봤는데 잘 이해할 수없는 것 같습니다. 제목이 예외적으로 길 경우 (1000 자 이상) html 제목을 추출하는 정규식 명령문을 원합니다. 다음 제목을 선택하려면 다음을 수행해야합니다.Regex confusion - 특정 길이의 제목

<title>(.*?)</title> 

어디에서 길이 부분을 추가할지 잘 모릅니다. 어떤 도움이라도 대단히 감사하겠습니다!

+0

일반적으로 regexes는 HTML을 구문 분석하는 방법이 아닙니다. 이유에 대한 설명은 http://htmlparsing.com을 참조하십시오. 다음은 시작입니다. '', 텍스트 및 닫기 ''이 모두 같은 줄에 있지 않으면 어떻게합니까? 그것은 유효한 HTML이지만, 당신의 정규식은 그것을 찾지 못할 것입니다. –

답변

6
<title>(.{1000,})</title> 

(제목에 줄 바꿈이 포함되지 않은 경우 -이 경우 정규식 엔진의 처리 방법에 따라 다름)

이는 또한보고있는 문자열에 <title> 태그가 하나만 있다고 가정합니다 (HTML 파일의 경우 일 수 있습니다). 정규식이 취성있는 도구 일 때 일반적인 경고가 주어지면 HTML 다루기).

+0

당신이 다시 나를 때려 :) –

+1

"도트 일치 개행"스위치'(? s)'를 추가하는 것을 고려해 볼 수 있습니다. – Bohemian

+0

@ 보헤미안 : 예를 들어 JavaScript에서 스위치를 사용할 수 없으므로 OP에서 필요로하는 대답을 썼습니다. 사용 된 정규식 엔진을 알려주십시오. –