python - 用正则表达式捕捉第一场比赛 - PYTHON
问题描述
正则表达式正在分组,而不是选择第一个匹配项
正则表达式
([^:.]+)
数据
DATA1:OS
DATA2-XT
DATA3.DOMAIN.COM.BR
目标
DATA1
DATA2-XT
DATA3
解决方案
import re
pattern = re.compile('[^:.]+')
str_list = ["DATA1:OS",
"DATA2-XT",
"DATA3.DOMAIN.COM.BR"]
for e in str_list:
print(pattern.match(e).group())
推荐阅读
- image-processing - 低对比度图像的Python边缘检测
- spring-boot - “无法初始化代理 - 没有会话”对于父级中的多个多对多关系
- code-structure - 如何格式化代数代码以提高可读性
- python - Python tkinter 组合框,如何选择字典键并打印相应的值?
- ruby-on-rails - date_select 仅在 rails 中选择当前和过去的月份
- ruby-on-rails - 谁在 Rails 中处理用户的角色?
- stripe-payments - 是否可以在用户之间分期付款?
- css - 页脚超过弹性框项目。无法在页面末尾获取页脚。尝试使用网格和弹性框。这是带有网格的代码
- sql - 在 SQL 中,从一对多表中选择所有 FK,其中 FK 的表数据存在于多个列表/连接中的每一个中
- python - Python:获取返回错误的 Jira 票证