[問題] 請問正規表達式有反向處理嗎

作者: jijuan   2019-01-28 11:17:33
不知道反向這個形容正不正確,
想請問有沒有取得對比的功能,
比方說有個文檔
裡面的內容是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)
作者: vi000246 (Vi)   2019-01-28 11:56:00
用^
作者: TitanEric (泰坦)   2019-01-28 12:15:00
樓上正解 不過^要加在[]裡面唷
作者: adrianshum (Alien)   2019-01-28 23:12:00
^ 不行吧,樓上確定那是正解?看看negative look ahead 可能可以
作者: nini200 (200妮妮)   2019-01-29 11:18:00
if(re.match('\D+\s\D+',line)): print(line)

Links booklink

Contact Us: admin [ a t ] ucptt.com