ホームページ > バックエンド開発 > PHPの問題 > PHPで中国語のアスタリスクを置き換える方法

PHPで中国語のアスタリスクを置き換える方法

藏色散人
リリース: 2023-03-13 11:38:01
オリジナル
2633 人が閲覧しました

php でアスタリスクを中国語に置き換える方法: 1. 文字に中国語が含まれているかどうかを確認します; 2. mb_substr 関数を使用して、指定された中国語の部分をアスタリスクに置き換えます。

PHPで中国語のアスタリスクを置き換える方法

この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

* のアスタリスクを置き換える方法phpで中国語?

PHP ユーザー名はアスタリスクで処理されます

PHP ユーザー名は * 記号で処理されます:

ユーザー名: 英語、中国語、中国語と英語の混合、中国語

混在文字の処理は次のとおりです。最初の文字と末尾は保持され、中間は * に置き換えられます (1 文字は直接表示、2 文字: Zhang*、3 文字以上)文字: Song*Dan)

最初に文字に中国語の文字が含まれているかどうかを判断し、含まれている場合は mb_ シリーズの関数を使用します (ここでは中国語は UTF-8 形式を使用します)

UTF-8中国語の正規: "/[\x{4e00} -\x{9fa5}] /u"

GB2312 中国語の正規: "/[".chr(0xa1)."-".chr(0xff)。 "] /"

 //判断是否包含中文字符
if(preg_match("/[\x{4e00}-\x{9fa5}]+/u", $str)) {
    //按照中文字符计算长度
    $len = mb_strlen($str, 'UTF-8');
    //echo '中文';
    if($len >= 3){
        //三个字符或三个字符以上掐头取尾,中间用*代替
        $str = mb_substr($str, 0, 1, 'UTF-8') . '*' . mb_substr($str, -1, 1, 'UTF-8');
    } elseif($len == 2) {
        //两个字符
        $str = mb_substr($str, 0, 1, 'UTF-8') . '*';
    }
} else {
    //按照英文字串计算长度
    $len = strlen($str);
    //echo 'English';
    if($len >= 3) {
        //三个字符或三个字符以上掐头取尾,中间用*代替
        $str = substr($str, 0, 1) . '*' . substr($str, -1);
    } elseif($len == 2) {
        //两个字符
        $str = substr($str2, 0, 1) . '*';
    }
}
ログイン後にコピー

推奨学習: "PHP ビデオ チュートリアル "

以上がPHPで中国語のアスタリスクを置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート