查找字符串中字母的出现次数

时间:2015-09-03 09:29:15

标签: php regex

计算字符串中出现的字母数,并输出为可读字符串 例如“aadbbbcddddd”“2ad3bc5d”

2 个答案:

答案 0 :(得分:3)

用javascript语法编写你可以轻松转换php中的语法,而不是使用RegEx

header('Access-Control-Allow-Origin: *');

答案 1 :(得分:2)

您可以使用preg_replace_callback函数。

$s = "aadbbbcddddd";
$out = preg_replace_callback(
    '~(.)\1+~',
    function($m) {

        return strlen($m[0]).$m[1];
    },
    $s);
echo $out . "\n";

输出:

2ad3bc5d

(.)捕获一个字符\1+,同一个捕获的字符必须重复一次或多次。因此,这将匹配所有重复的字符,并仅捕获重复字符的第一个字符。