我需要在python中编写一个正则表达式,以匹配仅包含数字[0-9],空格和连字符的字符串。

print re.match('\d*', '1sdsd')


上面的模式即使包含字符也匹配。

最佳答案

您的答案将匹配,因为字符串中有一个数字。如果只在所有字符都与您的正则表达式匹配时才希望匹配,则必须使用^$指定字符串的开头和结尾。

  print re.match('^[\d\- ]+$', '1sdsd')


工作样本

https://regex101.com/r/KAzHMA/1

关于python - python匹配每个位置的数字,空格和连字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43897320/

10-17 03:11