【问题标题】:Explode by delimiters [closed]按分隔符分解[关闭]
【发布时间】:2014-10-16 12:45:15
【问题描述】:

我有一个小问题。

现在我有一个看起来像这样的字符串:

:value1, GARBAGE :value2, :value3

还有一个看起来像这样的字符串:

:value4 MAYBE GARBAGE :value5 GARBAGE :value6

如何在同一个函数中获取数组中所有以':'开头的值

喜欢:

Array
(
    [0] => value1
    [1] => value2
    [2] => value3
    [3] => value4
)

...

【问题讨论】:

标签: php arrays parsing explode


【解决方案1】:

你应该使用正则表达式。

这里有 2 个有效的例子:

preg_match_all('/:([^ ,]+)/', $input, $matches);

或者

preg_match_all('/:([a-zA-Z0-9]+)/', $input, $matches);

用您的字符串替换$input,正确格式的结果将是$matches[1]

【讨论】:

    【解决方案2】:
    <pre>
    <?php
      $str = ':value1, GARBAGE :value2, :value3 :value4 MAYBE GARBAGE :value5 GARBAGE :value6';
      preg_match_all ('/\:([a-zA-Z0-9]+)[\w,]*/' , $str, $matches);
    
      print_r($matches[1]);
    ?>
    </pre>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-11
      • 2017-08-11
      • 1970-01-01
      • 2014-07-06
      • 2013-04-03
      • 2021-02-06
      • 2013-06-03
      • 2016-07-05
      相关资源
      最近更新 更多