2017-03-23 2 views
-3

私はこのようになりますテキストがあります: -テキスト内の文章を特定するにはどうすればよいですか?

"I am an engineer. I am skilled in ASP.NET. I also know Node.js.But I don't have much experience. " 

ここで、「ASP.NETを」と「のNode.js」は単語として扱われます。また、 "私は..."の前にスペースはありませんが、別の文として扱う必要があります。

予想される出力は次のようになります。

["I am an engineer"," I am skilled in ASP.NET","I also know Node.js","But I don't have much experience"] 

はこれを行う方法はありますか?

import re 

s = "I am an engineer. I am skilled in ASP.NET. I also know Node.js.But I don't have much experience. " 
result = re.split(r'\.(?=\s?[A-Z][^.]*?)', s) 

print(result) 

出力:あなたはre.split()機能や、特定の正規表現パターンで、次のアプローチを使用することができ、あなたの現在の入力のために

+0

NLTKまたは他のNLPパッケージを使用して、任意の段落を文章に分割します。正規表現はこれのための最良のツールではありません。非常に具体的な入力がない限り。 –

答えて

0

['I am an engineer', ' I am skilled in ASP.NET', ' I also know Node.js', "But I don't have much experience. "] 

(?=\s?[A-Z][^.]*?) - 先読み正のアサーション、ことを保証します文区切り文字.の次に文章が続きます

関連する問題