【发布时间】:2013-07-03 19:01:15
【问题描述】:
我有一个字符串,里面可能有多个 cdata 标签:
<![CDATA[A Survey of Applications of Identity-Based Cryptography in Mobile Ad-Hoc Networks]]>
我正在使用 javascript/jquery,我需要删除多个 cdata 标签(将它们替换为“”)。
我怎么能用正则表达式写这个?
【问题讨论】:
-
试图用正则表达式来做这件事会导致疯狂。见this answer
-
您想只删除
<![CDATA[及其结束]]>,还是包括标签内的文本在内的所有内容? -
我只想删除所有出现的 cdata 标签,使用这个: string.replace("", "");只会删除一个。
-
为什么?如果 CDATA 中的文本包含任何
<或>字符,则您的 XML 将不再有效。如果要删除 CDATA,还必须对包含的文本进行编码。