PHP只反转单词的字母

PHP只反转单词的字母,php,Php,一个单词中的字母可以倒转吗 例如,如果我有单词$word=“word,!” 我需要的结果是$result=“drow,!” 我试着使用strev,但它也会反转标点符号 $word = "word,!pineapple--pizza"; $revd = preg_replace_callback('#([A-Za-z]+)#', 'rev_first', $word); function rev_first($matches){ return strrev($matches[1]);

一个单词中的字母可以倒转吗

例如,如果我有单词
$word=“word,!”

我需要的结果是
$result=“drow,!”

我试着使用strev,但它也会反转标点符号

 $word = "word,!pineapple--pizza";
 $revd = preg_replace_callback('#([A-Za-z]+)#', 'rev_first', $word);

function rev_first($matches){
    return strrev($matches[1]);
}


这就是您要找的吗?

尝试使用
preg\u replace\u callback

$result = preg_replace_callback('/\w+/', function($found) {
    foreach ($found as $value) {
        return strrev($value);
    }
}, "Hello, word,!");

echo $result; // olleH, drow,!

拆分字符串,在单词上使用<代码> Stryv ,然后将结果与标点连接起来。中间有标点符号吗?或者只在开头/结尾?是否有一组有限的标点符号?或者您只想反转字符串中可以包含任何内容的字母?我正在准备anwser,但这看起来最好。我只会使用<代码> \W/COD>而不是<代码> [AZ-Z] 。@ SavaGeman我会使用它,但是Word字符包含下划线和数字,这不是他要的,因为我不考虑这些字母中的任何一个。