【问题标题】:RegEx in php for "comma, space or one per line"?php中的正则表达式“逗号,空格或每行一个”?
【发布时间】:2009-08-26 10:46:34
【问题描述】:

我的网页上有一个 textarea 字段。我正在接受用户输入,我想将用户输入解析为“(由逗号、空格或每行一个)”这一行。

基本上我想获取单词,以逗号、空格或每行一个分隔。什么可以是正则表达式,我可以使用如下:

preg_split('/[,; " "]+/', $_tags);

我已经在使用正则表达式来分隔用户输入的标签。从“(由逗号、空格或每行一个)”的字符串中获取单词的正则表达式是什么

谢谢

【问题讨论】:

    标签: php regex


    【解决方案1】:
    <?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"
    }
    

    【讨论】:

      【解决方案2】:
      preg_split('/[,;\ \n]+/', $_tags);
      

      或者如果使用 php > 5.2.4

      preg_split('/[,;\ \v]+/', $_tags);
      

      preg_split('/[,;\s]+/', $_tags);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多