태그 내에서 따옴표를 찾는 방법?
문제
나는 다음과 같은 문자열이 있습니다.
This <span class="highlight">is</span> a very "nice" day!
태그 내에 따옴표를 찾으려면 VB의 Regex-Pattern이 어떻게 생겼습니까? 나는 그것을 무언가로 바꾸고 싶다 ...
This <span class=^highlight^>is</span> a very "nice" day!
<( ") [^>]+>와 같은 것이 작동하지 않습니다 :(
감사
해결책
그것은 당신의 Regex 풍미에 따라 다르지만 이것은 대부분의 사람들에게 효과적입니다.
"(?=[^<]*>)
편집하다: 이것이 어떻게 작동하는지 궁금한 사람에게. 이것은 영어로 "다음 <"이전에 a>이 뒤 따르는 인용문을 찾습니다.
다른 팁
regexes는 HTML을 구문 분석 할 때 근본적으로 나쁘다 (참조 XML과 HTML을 정규식으로 구문 분석하기 어려운 이유에 대한 몇 가지 예를 제공 할 수 있습니까? 이유를 위해). 필요한 것은 HTML 파서입니다. 보다 좋아하는 파서와 함께 HTML을 구문 분석 할 수있는 예를 제공 할 수 있습니까? 다양한 파서를 사용하는 예.
vb.net을 사용하는 경우 사용할 수 있어야합니다. htmlagilitypack.
이 시도: <span class="([^"]+?)?">
태그에서 첫 번째 속성 값을 가져와야합니다.
<[^">]+"(?<value>[^"]*)"[^>]*>
당신의 의도가 태그 내의 모든 따옴표 마크를 교체하려는 경우 다음과 같은 정규 표현식을 사용할 수 있습니다.
(<[^>"]*)(")([^>]*>)
그것은 당신의 견적 마크 전후의 하위 문자열을 분리합니다. 이것은 개구부 및 마감 인용 마크와 일치하지 않습니다. 단순히 태그 내에 따옴표와 일치합니다.