正则表达式匹配随机字符串中的两位数字而不匹配3位或更多位数

Abd*_*eer 1 python regex

从字母数字字符串我需要选择所有两位数字.

例如: input = 'abc123#d$45^abrt&89*'

output = [45, 89]

当我这样做时,即使从三位数字中选择两位数.

数字可以是字符串中的任何位置 - 开头,中间或结尾.此外,锚点可以是任何东西(当然除了数字).

请建议使用正则表达式或与其他字符串操作一起使用是否更好.

如果提供了python代码将会很有帮助.

rob*_*ert 5

你需要看起来断言:

>>> re.findall(r"(?<!\d)\d\d(?!\d)", "abc123#d$45^abrt&89*")
['45', '89']
Run Code Online (Sandbox Code Playgroud)