Tôi có một danh sách chứa nhiều câu. Tôi muốn lặp qua danh sách, hoặc bỏ ra khỏi tất cả các câu từ như "và", "the", "a", "là", vvXóa tất cả các bài viết, từ kết nối, v.v., từ một chuỗi trong Python
Tôi cố gắng này:
def removearticles(text):
articles = {'a': '', 'an':'', 'and':'', 'the':''}
for i, j in articles.iteritems():
text = text.replace(i, j)
return text
Như bạn có thể có thể nói, tuy nhiên, điều này sẽ loại bỏ "a" và "an" khi nó xuất hiện ở giữa từ. Tôi cần phải loại bỏ chỉ các trường hợp của các từ khi chúng được giới hạn bởi không gian trống, và không phải khi chúng nằm trong một từ. Cách hiệu quả nhất để thực hiện điều này là gì?
Tuyệt vời! Tôi biết ai đó sẽ gửi regex làm giải pháp. Tôi sợ tôi là một người nghiệp dư. Bạn có biết bất kỳ hướng dẫn/tham chiếu regex nào tốt không? – Parseltongue
Có một hướng dẫn [ở đây] (http://www.regular-expressions.info/tutorialcnt.html), tôi đã không làm tất cả vì vậy tôi không chắc chắn như thế nào tốt nó là mặc dù. Công cụ chính tôi sử dụng để thiết kế regex là [My Regex Tester] (http://www.myregextester.com), giúp bạn dễ dàng biết được tại sao và tại sao mọi thứ lại phù hợp. – Nemo157
Làm chủ các cụm từ thông dụng (bởi Friedl, quán rượu O'reilly) đáng để sở hữu. http://www.amazon.com/Mastering-Regular-Expressions-Jeffrey-Friedl/dp/0596528124/ –