0

我有一个字符串,它包含一些我想要到达的单词,分隔符可以是任何由, ;空格组成的字符串。

这是一个例子:

;,osman,ali;, mehmet ;ahmet,ayse; ,

我需要将单词osman ali mehmet ahmetayse数组或任何我可以一个一个使用它们的类型。我通过使用 preg 函数进行了尝试,但我无法弄清楚。

如果有人提供帮助,我将不胜感激。

4

3 回答 3

8
$words = preg_split('/[,;\s]+/', $str, -1, PREG_SPLIT_NO_EMPTY);
  • [,;\s]是一个字符组,表示匹配该组中包含的任何字符
  • \s匹配任何空白字符(空格、制表符、换行符等)。如果这太多了,只需用空格替换它:[,; ]
  • +表示匹配一个或多个前面的符号或组

演示

http://www.regular-expressions.info/是一个学习正则表达式的好网站。

于 2011-04-29T12:43:20.557 回答
3

您想使用preg_split并使用 [;, ]+ 为您的正则表达式拆分

$keywords = preg_split("/[;, ]+/", $yourstring);
于 2011-04-29T12:43:06.123 回答
1

拆分非单词字符:

$array=preg_split("/\W+/", $string);
于 2011-04-29T12:43:40.283 回答