我有类似于的字符串
$a = 'helloMister';
$b = 'doggyWaltz';
$c = 'bumWipe';
$d = 'pinkNips';
我怎么能在大写字母上爆炸?我在谷歌上搜索了一段时间,结果一无所获!
如果要将helloMister
拆分为hello
和Mister
,可以使用preg_split
通过使用正向前瞻断言在大写字母之前的某个点拆分字符串:
$pieces = preg_split('/(?=[A-Z])/',$str);
如果你想把它分成hello
和ister
,你可以做:
$pieces = preg_split('/[A-Z]/',$str);
查找预拆分
$result = preg_replace("([A-Z])", " $0", "helloMister");
print_r(explode(' ', $result));
黑客。只是输入字符串中没有空格。
扩展Mathew的答案,这非常有效,
$arr = preg_replace("([A-Z])", " $0", $str);
$arr = explode(" ",trim($arr));
进一步了解所选答案。
如果你在处理文本中的缩写词,它会将OOP
更改为O O P
然后,您也可以使用preg_split('/(?=[A-Z][a-z])/', $text)
来查找小写字母,以完全捕获单词。
看看preg_split,它就像爆炸一样,但需要一个正则表达式
preg_split('~[A-Z]~',$inputString)