作者jijuan ()
看板Python
标题[问题] 请问正规表达式有反向处理吗
时间Mon Jan 28 11:17:33 2019
不知道反向这个形容正不正确,
想请问有没有取得对比的功能,
比方说有个文档
里面的内容是
https://drive.google.com/open?id=1OQi21nSnrgTUpz2iyO-81JShQSCXLvS4
Player
Taylor Johnson
Salary
Fish
Jack Lee
Bob Woody
Name
CITY
Roy Williams
Dish
Age
Wish
然後我想要比对每一行,只留下姓名,其它无用的字都不用,
那现在的作法是如下,把那些要排除的字加入後,
利用mo == None来做处理,
那是否有可以直接在wish_regex = re.compile(...
这行直接指定“排除掉这些结果”就是我要的这种写法呢?
import re
wish_regex = re.compile('Player|Salary|Fish|Name|City|Dish|Age|Wish')
with open('test.txt', 'rt', encoding='utf8') as f:
read_data = f.readlines()
for line in read_data:
mo = wish_regex.match(line)
if mo == None:
print(line)
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 122.118.210.158
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1548645456.A.A3E.html
1F:推 vi000246: 用^ 01/28 11:56
2F:推 TitanEric: 楼上正解 不过^要加在[]里面唷 01/28 12:15
3F:→ adrianshum: ^ 不行吧,楼上确定那是正解?看看negative look ahea 01/28 23:12
4F:→ adrianshum: d 可能可以 01/28 23:12
5F:→ nini200: if(re.match('\D+\s\D+',line)): print(line) 01/29 11:18