替换单词中的字符,但忽略大小写?

时间:2018-05-14 14:38:35

标签: php wordpress

我希望能够使用外国重音字符替换单词中的字符,并将其应用于我的整个Wordpress网站,方法是添加一个影响the_contentthe_title和{{ 1}}。

然而,当使用下面的内容时,虽然它有效,但如果找到的单词以大写字母开头,它将交换第一个字母的标题大小写,我想保留它。

有没有办法让一个函数替换角色,同时保留其他字母?

或者只是更容易拥有两个函数,一个用于小写,一个用于大写?

post_meta

2 个答案:

答案 0 :(得分:2)

您可以使用preg_replace_callback检查5字符是大写还是小写。

u

输出

function bv_replace_tunbridge($content) {
    return preg_replace_callback('/t(u)nbridge/i', function ($match) {
        return str_replace(
            $match[1],
            $match[1] == 'u' ? 'û' : 'Û',
            $match[0]
        );
    }, $content);
}
add_filter('the_content','bv_replace_tunbridge');

答案 1 :(得分:1)

使用两个函数的替代方法,您可以使用正则表达式搜索您要查找的条件。

通过这种方式,您可以搜索这两种情况,而无需重复代码。

了解preg_replace()函数here

相关问题