Php 如何使用preg_split拆分重复的字符和数字?
我正试图解决一些问题,我需要拆分重复的字符和所有整数Php 如何使用preg_split拆分重复的字符和数字?,php,design-patterns,preg-split,Php,Design Patterns,Preg Split,我正试图解决一些问题,我需要拆分重复的字符和所有整数 $code = preg_split('/(.)(?!\1|$)\K/', $code); 我试过这个,但它是分开的,不是重复的字符,也不是重复的整数,我只需要字符 我有一个字符串“FFF86C6” 我需要一个数组(FFF,86,C,6) 使用模式“/(?!\1 |$)\K/”返回(FFF,8,6,C,6) 你知道怎么做吗?你可以使用这个正则表达式: 它查找一个字母,后跟一些相同字符的数字或一些数字。通过使用preg\u match\u a
$code = preg_split('/(.)(?!\1|$)\K/', $code);
我试过这个,但它是分开的,不是重复的字符,也不是重复的整数,我只需要字符
我有一个字符串“FFF86C6”
我需要一个数组(FFF,86,C,6)
使用模式“/(?!\1 |$)\K/”返回(FFF,8,6,C,6)
你知道怎么做吗?你可以使用这个正则表达式: 它查找一个字母,后跟一些相同字符的数字或一些数字。通过使用
preg\u match\u all
我们可以在字符串中找到所有匹配项。PHP中的用法:
$string = "FFF86CR6";
$pieces = preg_match_all('/([A-Za-z])(\1*)|\d+/', $string, $matches);
print_r($matches[0]);
输出:
Array (
[0] => FFF
[1] => 86
[2] => C
[3] => R
[4] => 6
)
非常感谢,也许你知道如何在这个模式中添加“')”和“(”?因此,如果字符串中有括号,它也会作为单个元素出现在数组中。这些模式对我来说有点痛苦:(@OlgaKriukova你能给我一个例子说明你的意思吗?如果字符串“FFF3RF(5)”在preg__匹配之后:array('FFF',3',R',F',','('5'));@OlgaKriukova只需将
(
和)
的字符类添加到正则表达式中。请参阅
Array (
[0] => FFF
[1] => 86
[2] => C
[3] => R
[4] => 6
)