내가 약간의 HTML을 구문 분석하고 정규 표현식을 사용하고, 현재 내가 가진 :허용 '@'문자열 정규식 내에서
(?<='>)(.*?\w)(?=<)
소스가 좀 지저분하다 :
<tr style='mso-yfti-irow:2;height:17.15pt'>
<td width=319 valign=top style='width:239.4pt;background:#C0504D;padding:
0cm 5.4pt 0cm 5.4pt;height:17.15pt'>
<p class=MsoNormal><b><span style='color:white'>Personal Email Address<o:p></o:p></span></b></p>
</td>
<td width=319 valign=top style='width:239.4pt;padding:0cm 5.4pt 0cm 5.4pt;
height:17.15pt'>
<p class=MsoNormal><span style='color:#1F497D'><a
href="mailto:[email protected]">[email protected]</a></span><span
style='color:#0070C0'><o:p></o:p></span></p>
</td>
결과 () 완전 분석 소스 코드에서 :
1 이름 1 : 존 스미스 1 : 개인 이메일 주소 1 : 날짜 1을 시작 13/07/2014 1 : 최종 날짜 1 : 31/08/2 014 1 : 비용 센터 1 : 출생 1 날짜 : 1 건물 15/04/1978
이 때문에의 이메일 주소를 캡처 거부 '@'.
정규식 내에서 @을 어떻게 캡처합니까?
UPDATE : 문제는 '@'를 아포스트로피하지 않을 것으로 보인다
이 는 어떻게 추가 할
(?<='>)(.*?\w)(?=<)
또는
">
HTML을 구문 분석 할 때 HTML 구문 분석기를 사용하지 않는 이유는 무엇입니까? 예 : .NET 용 [HTML 민첩성 팩] (http://htmlagilitypack.codeplex.com). –
감사합니다. Damien, 앞으로는 아마도 이것을 사용할 것입니다.하지만 제 직장에서는 제 기계에 추가 할 수 없거나 할 수없는 것을 조금 제한하고 있습니다. 멋진 작은 팩 비록, 집에서 이것을 사용하고있을 것이다;) –