我有一个如下所示的字符串
Mickey <script> 333</script> 1 <script>eee</script> 2 <script>edddde</script> 3
我希望它如下所示(替换所有的开始脚本和结束脚本标记的空白)
Mickey 1 2 3
当我在下面尝试时(它会替换第一个和最后一个脚本标记之间的整个内容
data = data.replace(/<script>.*<\/script>/,"")
我得到 Mickey 3
答案 0 :(得分:3)
使用非贪婪的算子:
data = data.replace(/<script>.*?<\/script>/g, "");
答案 1 :(得分:2)
我猜它几乎就是你要找的东西
data.replace(/<script>(.*?)<\/script> +/g, "")
用这个可以得到你想要的东西:
data.replace(/<script>(.*?)<\/script>/g, "").replace(/\s+/g, " ")
答案 2 :(得分:1)
您必须使用正确的分组方式全局捕获该组:
data.replace(/<script>(.*?)<\/script>/g,"")
答案 3 :(得分:0)
使用|
运算符匹配第一个或第二个表达式。
不要忘记全局运算符g来匹配字符串中的所有匹配项。
data.replace(/<script>|<\/script>/g, "")
//生产&#34;米奇333 1 eee 2 edddde 3&#34;