您能帮我解决这个例子吗?
BUILTIN\s+\d{1,2}
https://regex101.com/r/w7A3H7/1
我只想过滤出文本BUILTIN
之后和x
字符之前的数字。现在结果还包含单词BUILTIN
,即我要删除的单词。
我也不能简单地使用\d{1,2}x
,因为我必须确保它在单词BUILTIN
的第二次出现之后。谢谢
答案 0 :(得分:1)
您可以使用以下模式:
BUILTIN\s+\K\d+(?=x)
BUILTIN
文字子字符串。\s+
匹配空格,一个或多个匹配项。\K
重置运算符,用于重置匹配项。 \d+
匹配数字。 (?=x)
正向查找,可确保在数字后出现x
。您可以尝试here:
如果您使用的是不支持reset运算符的正则表达式,则可以使用:
(?<=BUILTIN\s{11})\d+(?=x)
(?<=BUILTIN\s{11})
向后查找文字子字符串,后跟11个空格。\d+
匹配数字。 (?=x)
正向查找,可确保在数字后出现x
。您可以尝试here
Match 1
Full match 57-59 `48`
Match 2
Full match 137-138 `4`
Match 3
Full match 283-285 `24`
Match 4
Full match 363-365 `48`