从文本文件中打印以特定单词或字符开头和结尾的句子?

时间:2016-04-17 08:06:48

标签: python

如何在文本文件中查找以特定单词开头和结尾的句子,例如以''结束了'你已经尝试了

def main():
  f=open('D:\\file.txt')
  print 'The lines that starts with The and Ends with u'
  for line in f:
     for j in line.split('.'):
         if j[0]=='T' and j[1]=='h' and j[2]=='e' and j[3]==' ' and  j[-1]=='u':
            print j
if __name__ == '__main__':main()

我们可以使用单词比较来代替字符比较吗?

3 个答案:

答案 0 :(得分:0)

您可以使用startswithendswith与字符串进行比较:

print 'The lines that starts with The and Ends with u'

with open('test.txt') as f:
    for line in f:
        line = line.strip()
        if line.startswith('The') and line.endswith('u'):
            print line

答案 1 :(得分:0)

有几种简单的方法可以阅读“句子”和一些更复杂的句子(但它们要好得多 - 例如NLTK)。 从这个问题中选择您最喜欢的:Python split text on sentences

在完成提取“句子”而不是行之后,您几乎可以使用自己的代码进行比较。

答案 2 :(得分:0)

import re

x = 'The lines that starts with The and Ends with u'

print(re.findall(r'\A(The)\s(\w+\s)+u\Z',x))