Python中文
首页
教程
问答
标签
搜索
登录
注册
在Python中使用正则表达式获取特定字符串
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有如下类似的字符串:</p> <pre><code>ART-B-C-ART0015-D-E01 ADC-B-C-ADC00112-V-E01 AEE-B-C-AEE00011-D-E01 AQW-B-C-AQW0013-D-E01 AAZ-B-C-AAZ0014-D-E01 AQQ-B-C-AQQ0032-D-E01 ADD-B-C-D-ADD0001-D-E01 AAA-B-C-AAA0012-D-E01 </code></pre> <p>我希望得到以下结果: 预期结果:</p> <pre><code>ART0015 ADC00112 AEE00011 AQW0013 AAZ0014 AQQ0032 ADD0001 AAA0012 </code></pre> <p>我使用了下面的正则表达式代码,不幸的是,我没有得到预期的结果,因为第7条记录不在第三个破折号中。在第四段</p> <pre><code>df["A"].str.extract(r'^(?:[^-]*-){3}\s*([^-]+)', expand=False) 0 ART0015 1 ADC00112 2 AEE00011 3 AQW0013 4 AAZ0014 5 AQQ0032 6 D 7 AAA0012 </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>另一种在匹配后查找2<code>-</code>个独立子字符串的方法:</p> <pre><code>>>> df['A'].str.extract(r'([^-]+)(?:-[^-]*){2}$') 0 0 ART0015 1 ADC00112 2 AEE00011 3 AQW0013 4 AAZ0014 5 AQQ0032 6 ADD0001 7 AAA0012 </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
4 回答
如何在乒乓球游戏中阻止球
2 回答
如何在乘法和模中不乘空间?
6 回答
如何在乘法和除以2个不同的数字之间进行交换?
7 回答
如何在也是数据一部分的单个字符上拆分大字符串
1 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
4 回答
如何在事件wxWidgets中传递自定义数据
5 回答
如何在事件中使用lambda i=i?
9 回答
如何在事件中心只接收最近的数据
10 回答
如何在事件发生之前保持云函数运行?
3 回答
如何在事件发生后使页面重定向到同一页面
1 回答
如何在事件回调之间保持python生成器的状态
2 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
10 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
9 回答
如何在事件处理程序中访问外部对象?
4 回答
如何在事件循环中将协程打包为正常函数?
1 回答
如何在事件循环之外运行协同程序?
4 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
2 回答
如何在事件文件中只保留一份摘要?
5 回答
如何在事件模板中添加事件
3 回答