모든 html 문자열에서 모든 빈 앵커 태그를 찾는 정규식을 찾고 있습니다. "비어 있음"은 자체 또는 그 하위 노드에 텍스트 노드가 없음을 의미합니다. 예를 들어빈 앵커 태그를 찾는 정규식
는, 이러한 발견해야합니다
<p>abc<a href="http://foo.com"></a>def</p>
<p>abc<a href="http://foo.com"><span></span></a>def</p>
<p>abc<a href="http://foo.com"><span><b></b></span></a>def</p>
그리고이 없습니다 :
<p>abc<a href="http://foo.com">Some text</a>def</p>
<p>abc<a href="http://foo.com"><span></span></a>def</p>
<p>abc<a href="http://foo.com">Some<span><b>Text</b></span></a>def</p>
정규식은 POSIX 호환되어야합니다 (I MySQL을 위해 필요).
왜? 도움이되는 커스텀 regex_replace 함수를 사용하여 mysql 테이블 컬럼 (순수한 MySQL 사용)에서 빈 앵커를 제거해야하고 솔직하게 이것을 달성하기위한 더 좋은 방법을 모른다. MySQL UpdateXML
은 한 번에 여러 개의 일치 항목에 대해 작동하지 않습니다.
[정규식을 사용하여 HTML을 구문 분석하면 안됩니다.] (http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags/1732454#1732454) – Bohemian
html 코드가 포함 된 필드가있는 mysql 테이블을 조회해야하며 빈 앵커를 순수 MySQL로 바꿔야합니다. 다른 방법을 아십니까? – acme
regexes로 HTML을 구문 분석하면 슬픔으로 이어질 것입니다. –