0

我想从字符串中提取一个 ID<p>id = 22<p>\n<p>1. iteration, 1. task<p>

和:

var str="<p>id = 22<p>\n<p>1. iteration, 1. task<p>";
var patt1=/<p>id = (.*)<p>/;
document.write(str.match(patt1));

但不知何故它返回到浏览器:

id = 22 
,22

为什么这样?为什么是 2 场比赛?

4

2 回答 2

2

()是用于提取匹配部分的分组运算符。如果你只想提取 id 然后使用str.match(patt1)[1]

于 2012-10-20T21:50:22.363 回答
0
/<p>id[^<]+<p>/

似乎更适合您的任务。但是您的输入字符串非常混乱。不应该是一些 HTML 开闭标签序列吗?

于 2012-10-20T22:32:42.783 回答