正则表达式 - Javascript - 单引号

时间:2015-06-23 03:04:13

标签: javascript regex

让我们假设我们有几个变量。 A. Str,一个字符串,John's .... B.正则表达式如下所示。

inner.Html其中有John's

我没有得到的,当我有一个带有单引号的str时,这个正则表达式的代码永远不会起作用。有什么想法吗?

var str = "John's"   
var regex = new RegExp("\>[^\<]+?(" + str  +")[^\>]+?\<", "gi");
var thismatch = regex.exec(this.innerHTML);

1 个答案:

答案 0 :(得分:0)

我不确定你的外部元素是什么样的,但是当 str 只有一个引号时你的正则表达式无法正常工作的原因之一就是因为你需要逃避引用在字符串中。

var str = "John's".replace(/(\')/g, '\\$1'); // "John\'s";
var regex = new RegExp("\>[^\<]+?(" + str  +")[^\>]+?\<", "gi");
var thismatch = regex.exec(this.innerHTML);