【发布时间】:2009-08-26 10:46:34
【问题描述】:
我的网页上有一个 textarea 字段。我正在接受用户输入,我想将用户输入解析为“(由逗号、空格或每行一个)”这一行。
基本上我想获取单词,以逗号、空格或每行一个分隔。什么可以是正则表达式,我可以使用如下:
preg_split('/[,; " "]+/', $_tags);
我已经在使用正则表达式来分隔用户输入的标签。从“(由逗号、空格或每行一个)”的字符串中获取单词的正则表达式是什么
谢谢
【问题讨论】:
我的网页上有一个 textarea 字段。我正在接受用户输入,我想将用户输入解析为“(由逗号、空格或每行一个)”这一行。
基本上我想获取单词,以逗号、空格或每行一个分隔。什么可以是正则表达式,我可以使用如下:
preg_split('/[,; " "]+/', $_tags);
我已经在使用正则表达式来分隔用户输入的标签。从“(由逗号、空格或每行一个)”的字符串中获取单词的正则表达式是什么
谢谢
【问题讨论】:
<?php
$_tags = "foo bar, dim; sum\nblah";
var_dump(preg_split('/[;, \n]+/', $_tags));
?>
结果:
array(5) {
[0]=>
string(3) "foo"
[1]=>
string(3) "bar"
[2]=>
string(3) "dim"
[3]=>
string(3) "sum"
[4]=>
string(4) "blah"
}
【讨论】:
preg_split('/[,;\ \n]+/', $_tags);
或者如果使用 php > 5.2.4
preg_split('/[,;\ \v]+/', $_tags);
或
preg_split('/[,;\s]+/', $_tags);
【讨论】: