gpt4 book ai didi

python - 如何在Python3.2中使用正则表达式检查字符串是否有数字

转载 作者:行者123 更新时间:2023-12-01 05:12:27 25 4
gpt4 key购买 nike

我需要编写一个脚本,人们可以在其中键入他们的名字(通过输入),并且脚本必须检查名称是否具有正确的格式(没有数字,没有大写字母,以大写字母开头)。这是我到目前为止所拥有的:

import re

def inputName():
name = input("Enter your name: ")
if re.search('^[A-Z]{1}\w[a-z]+',name):
print("ok")
else:
print('not ok')

inputName()

我也尝试过 [^\d] 和\D 和 [^0-9] 但它仍然无法正常工作。当我输入“A8hkjh”时,它返回“not ok”,但是当我输入“Ahj8k”时,它返回“ok”,即使字符串中有一个数字。

如何让脚本检查整个字符串?

最佳答案

\w 匹配字母以及数字和下划线。另外,不要忘记anchor正则表达式到字符串末尾,否则部分匹配会成功。例如,在 "Ab1" 上,如果您不使用 $ anchor ,则子字符串 "Ab" 会与您的正则表达式匹配:

 re.search('^[A-Z][a-z]+$',name)

应该解决这个问题。

关于python - 如何在Python3.2中使用正则表达式检查字符串是否有数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23890361/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com