Javascript正则表达式 - 在2个字符串之间查找

时间:2018-04-05 09:54:59

标签: javascript

我有这个字符串:

<tr onmouseover="setInfo('<b>Details for this (ID:1003030456) on Local</b><br>&nbsp;&nbsp;some more test here:

我想在&#34; ID之间获取数字:&#34;&#34;和#34;)本地&#34;)没有引号。

我有这段代码:

var data = '<tr onmouseover="setInfo('<b>Details for this (ID:1003030456) on Local</b><br>&nbsp;&nbsp;some more test here:';

var result = data.match(/\(ID: (.*)\) on local/);

console.log(result[1]);

但这没有找到它。

如何更改此设置以便找到所需的结果?

2 个答案:

答案 0 :(得分:2)

你这里有一些小错误:

  • 您的字符串中的'未转义
  • &#34; ID&#34;之间没有空格。以及字符串中的数字
  • 在&#34; local&#34;
  • 中有一个资本

见这里:

&#13;
&#13;
var data = '<tr onmouseover="setInfo(\'<b>Details for this (ID:1003030456) on Local</b><br>&nbsp;&nbsp;some more test here:';

var result = data.match(/\(ID:(.*)\) on Local/);

console.log(result[1]);
&#13;
&#13;
&#13;

答案 1 :(得分:1)

  1. 您的字符串未正确引用
  2. 您忘记了 L ocal
  3. ID:之后的额外空格不在输入
  4. const data = `<tr onmouseover="setInfo('<b>Details for this (ID:1003030456) on Local</b><br>&nbsp;&nbsp;some more test here:`;
    
    const result = data.match(/\(ID:(.*)\) on Local/);
    
    console.log(result[1]);