Python中文
首页
教程
问答
标签
搜索
登录
注册
用正则表达式截断尾部组
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有两个字符串,它们都以一些数字结尾,紧接着是一些非数字字符,例如<code>10.1002/0470868279-ch1</code>。我想完全切断这个组;对于这个例子<code>-ch1</code>。我试过了</p> <pre><code>import re str0 = '10.1002/0470868279-ch1' a = re.match('(.*)([^0-9]+[0-9]*)', str0) print(a.group(0)) print(a.group(1)) print(a.group(2)) str1 = '10.1002/0470868279.1' # likewise </code></pre> <p>但事实并非如此:</p> <pre><code>10.1002/0470868279.ch1 10.1002/0470868279.c h1 </code></pre> <p>我想正则表达式从一开始就很匹配。你知道吗</p> <p>有什么提示吗?你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>添加<code>?</code>使第一个匹配成为非贪婪的,以便它尽可能少地匹配。还要添加<code>$</code>,以便匹配始终转到字符串的末尾:</p> <pre><code>a = re.match('(.*?)([^0-9]+[0-9]*)$', str0) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
在python3中使用Scipy pearsonr函数
6 回答
在Python3中使用scipy对多个lorentzian进行数据拟合
4 回答
在Python3中使用Script=argv
10 回答
在python3中使用selenium webdriver进行未解析的回溯
5 回答
在python3中使用selenium和phantomjs的网页截图之前如何等待?
1 回答
在Python3中使用Selenium和Requests模块从网页获取文件
7 回答
在python3中使用SIGINT终止函数
2 回答
在Python3中使用SIGTERM时,允许进程完成而不是中断
1 回答
在python3中使用smtplib发送XML内容
2 回答
在python3中使用socket库(RFCOMM模式)重新连接蓝牙设备?
7 回答
在python3中使用sounddevice和numpy编写wav文件
7 回答
在python3中使用Sqlalchemy插入MySQL查找类型错误的原因
5 回答
在python3中使用sqlite、pandas和sqlalchemy很难让rollback工作
1 回答
在python3中使用SQLite的FTS3/4
8 回答
在Python3中使用struct.calcsize()和len()有区别吗?
3 回答
在python3中使用substring函数时发生TypeError
1 回答
在Python3中使用Tkinter entry小部件写入串行设备
9 回答
在python3中使用tkinter时,如何在每次按下函数时获得运行该函数的按钮?
4 回答
在python3中使用tkinter的子帧
2 回答
在Python3中使用tryexcept块时,如何避免使用未初始化的变量?
6 回答