4

我想获取字符串中包含的所有大写字母单词的数组。但前提是该行以“set”开头。

例如:

- string "setUserId", result array("User", "Id")
- string "getUserId", result false

不受“设置”正则表达式的限制,看起来像/([A-Z][a-z]+)/

4

1 回答 1

4
$str ='setUserId';                          
$rep_str = preg_replace('/^set/','',$str);
if($str != $rep_str) {
        $array = preg_split('/(?<=[a-z])(?=[A-Z])/',$rep_str);
        var_dump($array);
}

看见

您的正则表达式也将起作用。:

$str = 'setUserId';
if(preg_match('/^set/',$str) && preg_match_all('/([A-Z][a-z]*)/',$str,$match)) {
        var_dump($match[1]);                                                    
}

看见

于 2011-11-09T12:32:19.343 回答