(/(%3C * | <)[^ *]?script(%3E)[a-zA-Z0-9] * / gi,'')此regex不能单独在IE中用于删除字符串中的脚本

时间:2018-10-12 11:29:27

标签: javascript regex

下面的正则表达式不能单独在IE中运行,以从url中删除脚本标记:

正则表达式模式

(/(%3C*|<)[^*]?script(%3E)[a-zA-Z0-9]*/gi, '')

代码:

var testEx= http://tv/header:1<script>as</script>;      
testEX = testEx.replace(/(%3C*|<)[^*]?script(%3E)[a-zA-Z0-9]*/gi, '');     
console.log(testEx);

预期输出:

tv/header:1

您能为此建议解决方案吗?

1 个答案:

答案 0 :(得分:0)

您可以尝试以下正则表达式:

<fo:block text-align="justify">
  <fo:inline>Some text</fo:inline><fo:leader
  leader-pattern="dots" leader-length.optimum="100%"
  leader-alignment="end"
  /><fo:inline-container
  max-width="1.5in" text-align="right"
  axf:text-align-first="justify" >
          <fo:block><fo:leader leader-pattern="dots"
  leader-length.minimum="0" />a long piece of text on the right that has wrapped
and is even longer</fo:block>
  </fo:inline-container>
</fo:block>

我已更改:

现在,它与/(%3C*|<)[/]?script(%3E|>)[a-zA-Z0-9]*/gi 前面的可选斜杠'/'相匹配,还与'script'之后的文字'>'相匹配。

如果现在用空字符串替换,则会得到预期的结果。