1

いくつかのテキストを文に切り刻みたい。

ピリオドの後にスペースが続く、疑問符の後にスペースが続く、または感嘆符の後にスペースが続くまで、すべてのテキストを一致させたいと思います。

さらに、句読点は文字列の最後にある場合や、たとえば /r/n が後に続く場合があります。

これはほとんどそれを行います:

([^\.\?\!]*)

しかし、式にスペースがありません。これを修正するにはどうすればよいですか?

例:

I' a.m not. So? Sure about this! Actually.与えるべき:

I' a.m not
So
Sure about this
Actually
4

4 に答える 4

1

これを試して:

(.*?[!\.\?] )

.* はすべてを与えます。

[] はこれらの文字のいずれかです

() は参照するグループを提供するので、一致を取得できます。

于 2013-09-26T06:54:59.620 に答える
1

先読みで非貪欲な一致を使用します。

^.*?(?=[.!?]( |$))

文字クラスにある場合、これらの文字をエスケープする必要がないことに注意してください[...]

于 2013-09-26T06:55:10.917 に答える