正则表达式从字符串中获取数组编号
问题描述:
我想从字符串中获取数组编号。 例如:正则表达式从字符串中获取数组编号
Input: "@[Anonymous:2] abccdef, @[Sales:5]"
Output: [2, 5]
请帮帮我。谢谢
答
我不知道你用什么语言,但你可以发表评论,我很乐意为你更新我的答案和帮助。 编辑:OP在下面的注释中指定javascript。
@\[\w+:(\d+)\]
每场比赛的结果是capture group 1
您可以在regex.com
var s = "@[Anonymous:2] abccdef, @[Sales:5]"
var r = /@\[\w+:(\d+)\]/g
var m = r.exec(s)
var a = []
while (m != null) {
a.push(Number(m[1]))
m = r.exec(s)
}
console.log(a)
感谢检查您输入的正则表达式的评论! 使用JavaScript –
'@ \ [\ w +:(\ d +)\]'稍微好一些,因此捕获整个数字(您当前的正则表达式将只捕获两位或更多位数字的最后一位数字) – ctwheels
@msoliman你有一个无限循环 – ctwheels