【发布时间】:2017-12-19 06:28:56
【问题描述】:
如果名称有效,我想返回 true。名称可以包含:
- 大写或小写字符
- 没有数字或特殊字符
- 可以是一个或两个单词,中间有一个空格
- 名字和姓氏可以分别在 2-25 个字符之间
例如。
-
John Smith= 真 -
John= 真 -
JoHn= 真 -
John Sm1th= 假 -
John $mith= 假 -
J0hn= 假 -
John Smith= false(名称之间有两个空格)
到目前为止,这是我的代码。它未能通过其中一些测试用例。
import re
if re.findall('[A-Za-z]{2,25}\s[A-Za-z]{2,25}', string):
print("true")
else:
print("false")
【问题讨论】:
-
首先,测试字符串不要使用
re.findall,而是re.match。 -
不要让我们猜测哪些测试用例失败了。这应该是您问题的一部分!
-
@DanFarrell 为每个测试用例提供通过/失败
标签: python regex python-3.x