问题描述
我正在制作一个正则表达式,我只想匹配错误的标签,例如:<p>*这里有一些文字,也可能有一些其他标签,但没有结束'p'标签* </p>
I am making a regex expression in which I only want to match wrong tags like: <p> *some text here, some other tags may be here as well but no ending 'p' tag* </p>
<P>Affectionately Inscribed </P><P>TO </P><P>HENRY BULLAR, </P><P>(of the western circuit)<P>PREFACE</P>
在上面相同的文本中,我希望得到 <P>(of the west circuit)<P>
的结果,并且不应捕获任何其他内容.我正在使用它,但它不起作用:
In the above same text I want to get the result as <P>(of the western circuit)<P>
and nothing else should be captured. I'm using this but its not working:
<P>[^(</P>)]*<P>
请帮忙.
推荐答案
对于 xml/html 类型的数据,Regex 并不总是一个好的选择.尤其是属性、区分大小写、注释等都有很大的影响.
Regex is not always a good choice for xml/html type data. In particular, attributes, case-sensitivity, comments, etc all have a big impact.
对于 xhtml,我会使用 XmlDocument
/XDocument
和 xpath 查询.
For xhtml, I'd use XmlDocument
/XDocument
and an xpath query.
对于非 x"html,我会查看 HTML Agility Pack 和相同的.
For "non-x" html, I'd look at the HTML Agility Pack and the same.
这篇关于正则表达式 - 我只想匹配正则表达式中的开始标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!