【问题标题】:PHP preg_split between Character (prefix) and Number [duplicate]字符(前缀)和数字之间的PHP preg_split [重复]
【发布时间】:2019-01-17 05:41:39
【问题描述】:

对不起,我的英语不好,我想问一下如何使用 preg_split() 分割字符和数字。例如,我有任何带有前缀的数据:

ABC00001 to array(0 => 'ABC', 1 => 00001)
DEFG00002 to array(0 => 'DEFG', 1 => 00002)
AB00003 to array(0 => 'AB', 1 => 00003)

感谢建议

【问题讨论】:

    标签: php preg-split


    【解决方案1】:

    在字母序列后面的零长度位置上拆分。

    代码:Demo

    $string = 'ABC00001';
    $output = preg_split('~[A-Z]+\K~', $string);
    var_export($output);
    

    \K 表示忘记之前匹配的字符。

    【讨论】:

      【解决方案2】:

      您可以将preg_splitPREG_SPLIT_DELIM_CAPTUREPREG_SPLIT_NO_EMPTY 标志一起使用来做您想做的事情:

      $string = 'ABC00001';
      $output = preg_split('/([A-Z]+)/', $string, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
      print_r($output);
      

      输出:

      Array ( [0] => ABC [1] => 00001 )
      

      Demo on 3v4l.org

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-10-22
        • 1970-01-01
        • 1970-01-01
        • 2014-10-06
        • 2015-07-13
        • 2016-03-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多