Skip to main content
 首页 » 编程设计

python之正则表达式仅用于字符串中的数字

2025年05月04日12artech

我找不到只包含空格或整数的字符串的正则表达式。 该字符串是用户在键盘上的输入。它可以包含除 \n 之外的所有内容(但我猜这无关紧要),但我们可以关注 ASCII,因为它应该是英文句子 以下是一些示例:

确定:

'1' 
'2 3' 
'   3 56 ' 
'8888888       333' 
' 039' 

不好:

'a' 
'4 e' 
'874 1231 88 qqqq 99' 
' shf ie sh f 8' 

我有这个可以找到数字:

t = [int(i) for i in re.findall(r'\b\d+\b', text)] 

但我无法获取正则表达式。我的正则表达式目前是 re.match(r'(\b\d+\b)+', text) 但它不起作用。

请您参考如下方法:

>>> re.match(r'^([\s\d]+)$', text) 

需要将行首(^)和行尾($)字符放入,否则字符串中包含字符的部分会匹配,导致误报匹配