gpt4 book ai didi

Python:使用正则表达式检查 str

转载 作者:行者123 更新时间:2023-11-30 22:29:36 25 4
gpt4 key购买 nike

我需要编写 func 来检查 str。如果应该满足以下条件:

1) str 应以字母开头 - ^[a-zA-Z]

2) str 应包含字母、数字、.和 - ([\w]+*.-)

3) str 应以字母或数字结尾 - \w$

4) str 的长度应为 10 到 50

def check_login(str):
flag = False
if match(r'^[a-zA-Z]([\w]*.-)\w${10, 50}', str):
flag = True
return flag

它对所有组合返回False。我认为,2个条件下的错误。我知道,我可以使用 [a-zA-Z0-9\.-]+,但它并不表示强制输入。

我该如何解决这个问题?

最佳答案

用途:

match(r'^[a-zA-Z][\w.-]{8,48}\w$', str)

如果您不想匹配_:

match(r'^[a-zA-Z][a-zA-Z0-9.-]{8,48}[a-zA-Z0-9]$', str)

如果您想要至少一个点、一个破折号、一个字母和一个数字:

^[a-zA-Z](?=.*-)(?=.*\.)(?=.*[0-9])[a-zA-Z0-9.-]{8,48}[a-zA-Z0-9]$

其中 (?=....)lookahead ,一个零长度断言,确保我们在字符串中包含其内容。

关于Python:使用正则表达式检查 str,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46304067/

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