python-3.x - 如何仅从字符串文本中提取名称
问题描述
我有这些文字...
text1="% 4 Jérome Dekeyser + Corneille Wellens? "
text2="Matthew Sadler + Jon Speelman? 7 —"
text3="Martin Wostenholme + Frank Dancevic? “ere"
text4="7 4 Albert Lammens + Paul de Borman?"
text5="x Frans Gommers + Jeroen Simaeys?"
text6=" NSIe Darryl Johansen +George Xie? "
text7="Joseph Cludts + Herman \Verbauwen? "
我只想提取名称......这样我就明白了。
Jérome Dekeyser + Corneille Wellens
Matthew Sadler + Jon Speelman
Martin Wostenholme + Frank Dancevic
Albert Lammens + Paul de Borman
Frans Gommers + Jeroen Simaeys
Darryl Johansen +George Xie
Joseph Cludts + Herman Verbauwen
输出中的+号可以忽略。这就是我可能想要的结果...
Matthew Sadler ,Jon Speelman
解决方案
这个正则表达式可能会被改进,但它适用于所有示例,包括 Armin van Grünwald。
import re as regex
text1="% 4 Jérome Dekeyser + Corneille Wellens? "
extract_names = regex.findall(r'\b(?!\d)\w+\s\w+\s\w+\b|\b(?!\d)\w+\s\w+\b', text1)
print (extract_names)
# outputs
['Jérome Dekeyser', 'Corneille Wellens']
print (', '.join(extract_names))
# outputs
Jérome Dekeyser, Corneille Wellens
推荐阅读
- java - 当用户在 Android 中杀死应用程序时如何发送自定义谷歌分析事件
- javascript - jQuery:表单提交 - 多个事件处理程序
- searchkick - 在 searchkick 中获取已加载记录中的 ElasticSearch 文档字段
- javascript - Html如何将数据从一页发送到另一页
- linux - linux中文件大小增加的进度条
- java - 如何将 html 数据转换为 json 对象?
- flutter - 错误:'package:flutter/src/widgets/media_query.dart':断言失败:第 715 行 pos 12:'context != null':不正确
- ios - Swift 持久化并检索 UITableview 单元格复选标记
- git - 将 git 中的分支恢复为同一分支中的上一个提交
- html - 将文本与图像在同一水平对齐