擅长:python、mysql、java
<p>您可以对整个文本运行正则表达式,而不是在每行上运行它。试试这个:</p>
<pre><code>import re
with open('titles_500subset.txt') as searchfile:
text = searchfile.read()
d = re.findall('([^ \r\n]+) dogs?([\r\n]| |$)', text, re.IGNORECASE)
for result in d:
print result[0]
</code></pre>
<hr/>
<p>正则表达式解释:</p>
<ul>
<li><code>([^ \r\n]+)</code>查找不是空格或换行符的内容(一个或多个字符)</li>
<li>后跟空格字符</li>
<li><code>dog</code>后跟“dog”</li>
<li><code>s?</code>后跟可选的“s”</li>
<li>^{cd3>或者从新的一行中选择一个空格</li>
</ul>