regex - Python中的匹配字符
问题描述
我是一个初学者程序员,我不能得到这个。需要调用包含数据和匹配字符 (*) 的 .txt 文件并返回值。
.txt 文件包含以下数据:
Zone : Server1
00:88:41:oc*
12:11:ee:41
Zone : Server2
1e:41:eq:re
oc:41:31:26
Zone : Server3
00:88:41:ae*
1e:19:ee:46
因此,由于最后有一个 (*),它应该返回“区域”名称..预期结果是:
Server1
Server3
我正在尝试什么:
import re
s = open('./myfile.txt','r').read()
fp = open('./output.txt', 'w')
for zone in s.split("zone"):
m = re.search(r"\w+\*", zone)
if m:
fp.write(zone.splitlines()[0].strip(" :"))
解决方案
这是一种方法。
前任:
import re
s = """Zone : Server1
00:88:41:oc*
12:11:ee:41
Zone : Server2
1e:41:eq:re
oc:41:31:26
Zone : Server3
00:88:41:ae*
1e:19:ee:46"""
for zone in s.split("Zone"): #Separate Each zone
m = re.search(r"\w+\*", zone) #Check for *
if m:
print(zone.splitlines()[0].strip(" :")) #Get first line.
输出:
Server1
Server3
推荐阅读
- c# - 什么是 C# 中的元帅?我在哪里可以找到副本。元帅
- python - 从 Qt 小部件应用程序调用 pyqt 小部件
- fpdf - LARAVEL 5.7 FPDF - 更改 PDF 方向的配置文件不起作用
- angular - 我在 IIS 上托管的 Angular 应用程序的 IE 中没有显示 Favicon
- vim - vim - 如何选择多行?
- react-native - 如何调试未打开的 ReactNative 应用程序
- tcl - 如何在 tcl 脚本中对列表进行分组
- react-native - 无法访问反应导航中的道具
- python - 写入类型错误时:不支持的操作数类型 -: 'float' 和 'str'
- angular - 如何使用拖放在两个不同的网格(Ag-grid Angular 6)之间传输行?