0

生のテキストを文に分割しようとしています。したがって、関数を使用して、生のテキストを、およびpreg_split()の発生に基づいて文に分割するだけです。しかし、予想通り、「博士」、「氏」などの特殊なケースのために、いくつかの問題に直面しました。?.;.

そのような単語やパターンを分割から除外するにはどうすればよいですか?

preg_split('/(\. )|(\? )|(\; )!(Mr\.)/', $content);
4

1 に答える 1

2

正規表現に否定後読みを追加して、ドットの前に「Mr」と会社がないようにすることができます。

preg_split('/((?<!(Mr|Dr))\.|\?|;) /', $content);

また、正規表現を少し単純化しました。\s|$また、現在の式の末尾にある単一のスペースを (空白または入力の末尾で)置き換えることも検討する必要があります。

実際に見てください

于 2012-08-01T09:46:48.990 に答える