如何从字符串中删除//<![CDATA[
并使用javascript结束//]]>
var title = "<![CDATA[A Survey of Applications of Identity-Based Cryptography in Mobile Ad-Hoc Networks]]>" ;
需要成为
var title = "A Survey of Applications of Identity-Based Cryptography in Mobile Ad-Hoc Networks";
怎么做?
答案 0 :(得分:19)
您可以使用String.prototype.replace
方法,例如:
title = title.replace("<![CDATA[", "").replace("]]>", "");
这将替换每个目标子字符串。请注意,这只会替换每个匹配项的第一次出现,如果要删除所有匹配项,则需要使用正则表达式。
参考:
答案 1 :(得分:1)
你应该能够用正则表达式做到这一点。也许这样的事情?:
var myString = "<![CDATA[A Survey of Applications of Identity-Based Cryptography in Mobile Ad-Hoc Networks]]>";
var myRegexp = /<!\[CDATA\[(.*)]]>/;
var match = myRegexp.exec(myString);
alert(match[1]);
答案 2 :(得分:0)
我建议采用这种更广泛的方法来删除开头和结尾的CDATA内容:
title.trim().replace(/^(\/\/\s*)?<!\[CDATA\[|(\/\/\s*)?\]\]>$/g, '')
如果对CDATA的页眉和页脚进行注释,它也将起作用。