내부 주소록 응용 프로그램에서 벗어난 HTML 페이지가 있는데 테이블의 필드 이름과 필드 값을 모두 일치 시키려고합니다..NET 정규 표현식 -? 작동하지 않습니다 (내 생각처럼)
지금까지 최대 요리 한 정규 표현식은 잘 키와 값의 대부분을 일치
"href.*?>(.*?)<\\/a.*>(.*?)<\\/span"
입니다. 문제는 일부 값이 링크이기도하다는 것입니다.
href="JavaScript:updateField("peopleType", "390061", "[email protected]", "bob", "Reg", "Bob Bobson");" onMouseOver="window.status='Update this field if possible, else explain how to update it';return true;" onMouseOut="window.status='';return true;">Emp Type</a></span></td>
<td nowrap=""><span style="font-family: Arial, Times New Roman, Courier New, Courier, monospace; color: #006699">Reg</span
예 문자열 -
예 문자열 (작품 링크없이) (링크 - 작동하지 않습니다)
href="JavaScript:updateField("dept", "390061", "[email protected]", "bob", "Reg", "Bob Bobson");" onMouseOver="window.status='Update this field if possible, else explain how to update it';return true;" onMouseOut="window.status='';return true;">Dept</a></span></td>
<td nowrap=""><span style="font-family: Arial, Times New Roman, Courier New, Courier, monospace">
<a href="JavaScript:showDept('TheBobs');" onMouseOver="window.status='Show People in This Dept';return true;" onMouseOut="window.status='';return true;">TheBobs</a></span
(키를 캡처) 상반기 correctly.The 문제를 작동 욕심 많은. *가 끝나는 캐럿을 찾은 다음 비 탐욕스러운 링크를 발견하는 링크 끝까지 일치한다는 것입니다. 캡쳐 그룹에서 아무것도 남지 않았습니다. 내가 링크 (세 번째 캡처 그룹 - 그 안에/A 포함)와 문자열에 대한 잘 작동 정규식
"href.*?>(.*?)<\\/a.*>(.*?)(<\\/a>)?<\\/span"
시도 나의 두 번째 캡처 그룹이 작동 링크의 긴밀한 일치를,하지만 그것을 링크가 아닌 값에 대해서는 작동하지 않습니다. 왜냐하면 (내가 생각하기에) 닫는 링크 태그를 찾고 있기 때문입니다. 나는 생각했다? 그 포획 그룹의 끝에는 선택 사항이되어야합니다.
나는 RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace | RegexOptions.Singleline.
값의 링크가있는 대소 문자와 대소 문자가 일치하지 않는 정규식을 얻으려면 어떻게해야합니까? 감사합니다. .
견본에 포함될 "필드 이름"과 "필드 값"은 정확히 무엇입니까? – Lucero