【发布时间】:2010-09-12 09:47:33
【问题描述】:
我有以下字符串,我想删除 <bpt *>*</bpt> 和 <ept *>*</ept>(注意其中的附加标记内容也需要删除)而不使用 XML 解析器(对于小字符串来说开销太大)。
The big <bpt i="1" x="1" type="bold"><b></bpt>black<ept i="1"></b></ept> <bpt i="2" x="2" type="ulined"><u></bpt>cat<ept i="2"></u></ept> sleeps.
VB.NET 或 C# 中的任何正则表达式都可以。
【问题讨论】:
-
过滤器是什么意思?提炼?消除?请澄清。
-
避免使用 XML 解析器的原因是什么?
-
小字符串需要过滤,所以 XML Parser 开销是不可接受的。在这种情况下,过滤器被删除。
-
可以嵌套在 中吗?或相反亦然?如果是这样,问题就会复杂化。 -
如果存在任意嵌套,则没有涉及正则表达式的通用解决方案,并且由于嵌套有限,您的正则表达式会变得非常庞大且非常丑陋。