正则表达式:在括号之间找到一个数字

我需要一个正则表达式,可以在下面用粗体显示数字:

20(L.B.D.D.你好,312312312)土豆1651(98)

20(L.B.D.D.你好312312312兔子)土豆1651(98)

20(312312312)马铃薯1651(98)

((\d+)查找数字98

当括号中还有其他字符时,我不知道该怎么办

这仅与第一个捕获组中的312312312相匹配:

^.*?\([^\d]*(\d+[^\d]*\)*$

解释:

匹配行的开头
.*? # 非贪婪匹配任何东西
\(#直到第一个开口支架(转义)
[^\d]*#匹配任何非数字的内容(零或更多)
(\d+)#匹配数字字符串(一个或多个)
[^\d]*#匹配任何非数字的内容(零或更多)
\)#匹配闭合支架
.#匹配该行的其余部分
$#匹配该行的末尾

看这里

发表评论