从日期字符串

时间:2016-01-28 13:51:03

标签: php arrays regex

我有一个像这样的字符串

`mwftthssu`

现在我希望将其分解为

数组
['m', 'w', 'f', 't', 'th', 's', 'su']

所以我最初做的是str_split将它们转换成单个字符数组,并循环它,然后当我经过t时,我会检查下一个字母是否为{ {1}}如果我不将其推送到另一个数组,那么对于sat和sun,hs也是如此

有更好的方法吗?

1 个答案:

答案 0 :(得分:3)

您可以将preg_match_all与以下正则表达式一起使用:

[mwf]|th?|su?

请参阅demo

正则表达式匹配:

  • [mwf] - mwf
  • | - 或......
  • th? - tth
  • | - 或......
  • su? - ssu

这是PHP demo

$re = '~[mwf]|th?|su?~'; 
$str = "mwftthssu"; 
preg_match_all($re, $str, $matches);
print_r($matches[0]);