我想从另一个txt文件中导出一个新的txt文件列表。 第一个txt文件如下所示:
http://pastebin.com/raw/10hvUbTi电子邮件:631关键字:0.0
http://pastebin.com/raw/5f0bnCq9电子邮件:61关键字:0.0
我正在尝试创建一个如下所示的列表:
URL
URL
我在pycharm中没有得到任何输出
有人可以帮忙吗?
import re
import urllib2
filename = 'C:\\file.txt'
pattern = ('^\S*')
with open(filename) as f:
for line in f:
if pattern in line:
print line
答案 0 :(得分:1)
你可以去:
import re
rx = re.compile(r'^(?P<email>[^|\n]+)', re.MULTILINE)
with open("emails.txt") as f:
raw_data = f.read()
emails = [match.group('email') for match in rx.finditer(raw_data)]
print emails
显然,emails.txt
需要在这里进行调整
请参阅a demo on regex101.com。
答案 1 :(得分:0)
你根本没有使用正则表达式。您只是测试了原始字符串是否在行中。要使用正则表达式,
pattern = re.compile(r'^\S*')
注意模式字符串之前的r
,它代表原始字符串,在正则表达式中非常重要。
要搜索特定行中的pattern
,请使用
pattern.search(line)
如果找不到匹配项,则会返回MatchObject
,如果找不到,则返回None
。有关python正则表达式的更多参考资料可以在documentation中找到。