Python中文
首页
教程
问答
标签
搜索
登录
注册
Python正则表达式未返回预期值
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>问题:</p> <p>给定一个词,你需要判断它中大写字母的用法是否正确。你知道吗</p> <p>当下列情况之一成立时,我们将单词中大写字母的用法定义为正确:</p> <p>这个词中的所有字母都是大写,像“USA”。 这个词中的所有字母都不是大写的,比如“leetcode”。 只有在这个单词的第一个字母是大写的,如果它有一个以上的字母,如“谷歌”。 否则,我们定义这个词不正确地使用大写字母。你知道吗</p> <p>我的解决方案(使用regex库)</p> <p>进口re</p> <pre><code>def detectCapitalUse(word): pattern = r'[A-Z]*|[A-Z]?[a-z]*' r = re.search(pattern, word) print r.group() </code></pre> <p>模式的前半部分<code>[A-Z]*</code>应该匹配所有大写字母,或者第二部分<code>[A-Z]?[a-z]*</code>应该匹配任何以一个大写字母开头,其余为小写字母的单词,或者只匹配一个小写字母的单词。你知道吗</p> <p>当我编写以下测试用例时,我得到了意想不到的答案</p> <p><code>detectCapitalUse("Flag") Expected: Flag Actual Value: F</code></p> <p><code>detectCapitalUse("flag") Expected: flag Actual Value: Empty string</code></p> <p>我做错什么了?你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>让我们保持简单:您可以通过要求它匹配整个字符串来修复您的解决方案,这就是您的意思:<code>r"^([A-Z]*|[A-Z]?[a-z]*)$"</code>将按照您的预期工作。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
在python3中使用Scipy pearsonr函数
8 回答
在Python3中使用scipy对多个lorentzian进行数据拟合
9 回答
在Python3中使用Script=argv
3 回答
在python3中使用selenium webdriver进行未解析的回溯
2 回答
在python3中使用selenium和phantomjs的网页截图之前如何等待?
3 回答
在Python3中使用Selenium和Requests模块从网页获取文件
4 回答
在python3中使用SIGINT终止函数
6 回答
在Python3中使用SIGTERM时,允许进程完成而不是中断
5 回答
在python3中使用smtplib发送XML内容
9 回答
在python3中使用socket库(RFCOMM模式)重新连接蓝牙设备?
4 回答
在python3中使用sounddevice和numpy编写wav文件
10 回答
在python3中使用Sqlalchemy插入MySQL查找类型错误的原因
3 回答
在python3中使用sqlite、pandas和sqlalchemy很难让rollback工作
7 回答
在python3中使用SQLite的FTS3/4
2 回答
在Python3中使用struct.calcsize()和len()有区别吗?
6 回答
在python3中使用substring函数时发生TypeError
10 回答
在Python3中使用Tkinter entry小部件写入串行设备
9 回答
在python3中使用tkinter时,如何在每次按下函数时获得运行该函数的按钮?
3 回答
在python3中使用tkinter的子帧
6 回答
在Python3中使用tryexcept块时,如何避免使用未初始化的变量?
5 回答