Python 正则表达式匹配包含空格但不能为所有空格的数字?
我正在编写一个python正则表达式代码来测试字符串是否可以是数字。我写道:Python 正则表达式匹配包含空格但不能为所有空格的数字?,python,regex,Python,Regex,我正在编写一个python正则表达式代码来测试字符串是否可以是数字。我写道: import regex as re re.match('(([-\s]*)([\d\s,]+)(\.?)([\d\s]*)(%?))',' - 1, 00 0.0 0 %') 这个有效。但是如何使这个示例字符串('.01'或.01)不匹配?i、 e.如何使模式匹配包含任何数字、、、、、、、%的字符串,但不匹配之前的内容仅为空格或无的字符串。只需在匹配之前添加一个前瞻(?=[\s,]*\d),然后再匹配之前的数字,断
import regex as re
re.match('(([-\s]*)([\d\s,]+)(\.?)([\d\s]*)(%?))',' - 1, 00 0.0 0 %')
这个有效。但是如何使这个示例字符串(
'.01'
或.01
)不匹配?i、 e.如何使模式匹配包含任何数字、、、、、、、%
的字符串,但不匹配
之前的内容仅为空格或无的字符串。只需在匹配
之前添加一个前瞻(?=[\s,]*\d)
,然后再匹配之前的数字,断言有一个数字(在
之前):
(([-\s]*)(?=[\s,]*\d)([\d\s,]+)(\.?)([\d\s]*)(%?))