标签: php arrays regex
我有一个像这样的字符串
`mwftthssu`
现在我希望将其分解为
['m', 'w', 'f', 't', 'th', 's', 'su']
所以我最初做的是str_split将它们转换成单个字符数组,并循环它,然后当我经过t时,我会检查下一个字母是否为{ {1}}如果我不将其推送到另一个数组,那么对于sat和sun,h和s也是如此
str_split
t
h
s
有更好的方法吗?
答案 0 :(得分:3)
您可以将preg_match_all与以下正则表达式一起使用:
[mwf]|th?|su?
请参阅demo
正则表达式匹配:
[mwf]
m
w
f
|
th?
th
su?
su
这是PHP demo:
$re = '~[mwf]|th?|su?~'; $str = "mwftthssu"; preg_match_all($re, $str, $matches); print_r($matches[0]);