例如,我有这样的句子:
$text = "word, word w.d. word!..";
我需要这样的数组
Array
(
[0] => word
[1] => word
[2] => w.d
[3] => word".
)
我对正则表达式非常陌生...
以下是我的尝试:
function divide_a_sentence_into_words($text){
return preg_split('/(?<=[\s])(?<!f\s)\s+/ix', $text, -1, PREG_SPLIT_NO_EMPTY);
}
这个
$text = "word word, w.d. word!..";
$split = preg_split("/[^\w]*([\s]+[^\w]*|$)/", $text, -1, PREG_SPLIT_NO_EMPTY);
print_r($split);
程序可以正常工作,但我有第二个问题,我想在我的正则表达式中写列表。 "w.d" 是一个特殊情况。例如,这些单词是我的列表 "w.d"、"mr."、"dr."。
如果我有以下文本:
$text = "word, dr. word w.d. word!..";
我需要得到数组:
Array (
[0] => word
[1] => dr.
[2] => word
[3] => w.d
[4] => word
)
sorry for bad english...