1

我正在尝试解析网页并获取 <li>YM# 之后的数字参考。例如,我需要从包含 HTML 的变量中获取 1234-234234

<li>YM# 1234-234234 </li>

非常感谢您的帮助!

富有的

4

3 回答 3

1

Try this:
(<li>[^#<>]*?# *)([\d\-]+)\b
and get the result in $2.

于 2012-04-21T05:57:14.190 回答
1

(?!<li>YM#\s)([\d-]+)

http://regexr.com?30ng5

这将匹配数字。

于 2012-04-21T06:00:31.013 回答
1

目前,您的正则表达式只有在破折号之前有一个数字并且在它之后有一个数字时才匹配。这将让您在每个地方获得一个或多个数字:

/YM#[0-9]+-[0-9]+/g

然后,你还需要捕获它,所以我们使用一个 cgroup 来捕获它:

/YM#([0-9]+-[0-9]+)/g

然后我们需要再次引用捕获组,所以我们使用下面的代码而不是String.match

var regex = /YM#([0-9]+-[0-9]+)/g;
var match = regex.exec(text);
var id = match[1];
 // 0: match of entire regex
 // after that, each of the groups gets a number
于 2012-04-21T06:07:33.937 回答