Rumah pembangunan bahagian belakang masalah PHP Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php

Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php

Sep 22, 2022 pm 06:55 PM
php rentetan php

Langkah pengesanan: 1. Gunakan fungsi preg_replace() dengan ungkapan biasa untuk menapis rentetan dan mengalih keluar huruf bukan Cina dalam rentetan Sintaksnya ialah "preg_replace("/[^x{4E00}-x{. 9FFF} ] /u",'', rentetan asal)" akan mengembalikan rentetan yang mengandungi semua huruf Cina 2. Gunakan fungsi mb_strlen() untuk mengira panjang rentetan yang ditapis (bilangan aksara Cina), sintaks "; mb_strlen (rentetan penapis,"utf-8").

Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php

Persekitaran pengendalian tutorial ini: sistem windows7, PHP versi 8.1, komputer DELL G3

Dalam php, anda boleh menggunakan preg_replace( ) fungsi dan mb_strlen() berfungsi untuk mengesan bilangan aksara Cina yang ada pada rentetan.

Langkah pelaksanaan:

Langkah 1: Gunakan fungsi preg_replace() dengan ungkapan biasa untuk menapis rentetan dan mengeluarkan rentetan Bukan -Huruf Cina

preg_replace() prinsip pemadaman: Gunakan ungkapan biasa untuk mencari huruf bukan Cina dalam rentetan dan gantikannya dengan aksara kosong ''.

<?php
header("Content-type:text/html;charset=utf-8");
$str = "欢迎4546来到php这里。zblog,我的?#$%^天呀&())*(&^";
echo "原字符串:";
var_dump($str);
$pattern = "/[^\x{4E00}-\x{9FFF}]+/u";
echo "过滤字符串后:";
$newStr=preg_replace($pattern,&#39;&#39;, $str);
var_dump($newStr);
?>
Salin selepas log masuk

akan mengembalikan rentetan yang mengandungi semua huruf Cina

Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php

Langkah 2: Gunakan fungsi mb_strlen() untuk mengira panjang rentetan penapis (Bilangan aksara Cina)

$len=mb_strlen($newStr,"utf-8");
echo "中文字符的个数:".$len;
Salin selepas log masuk

Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php

Penerangan:

preg_replace():

fungsi preg_replace() boleh melakukan carian dan penggantian ungkapan biasa Ia adalah fungsi pemprosesan penggantian rentetan yang berkuasa Format sintaks fungsi ini adalah seperti berikut:

preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
Salin selepas log masuk

Parameter. huraian Seperti berikut:

  • $pattern: corak yang hendak dicari, yang boleh menjadi rentetan atau tatasusunan rentetan
  • $replacement: rentetan atau tatasusunan rentetan yang digunakan penggantian. Jika hujah ini ialah rentetan dan $pattern ialah tatasusunan, maka semua corak digantikan dengan rentetan ini. Jika $pattern dan $replacement adalah kedua-dua tatasusunan, setiap $pattern digantikan dengan elemen yang sepadan dalam $replacement. Jika terdapat kurang elemen dalam $replacement berbanding $pattern, $pattern tambahan digantikan dengan rentetan kosong.
  • $subject: Tatasusunan rentetan atau rentetan yang akan dicari dan digantikan Jika $subject ialah tatasusunan, carian dan penggantian akan dilakukan pada setiap elemen $subjek, dan nilai pulangan juga akan menjadi satu tatasusunan. .
  • $limit: Parameter pilihan, bilangan maksimum penggantian bagi setiap corak pada setiap $subjek. Lalai ialah -1 (tidak terhad).
  • $count: parameter pilihan, jika dinyatakan, akan diisi dengan bilangan penggantian yang lengkap.

Jika $subject ialah tatasusunan, fungsi preg_replace() akan mengembalikan tatasusunan, jika tidak ia akan mengembalikan rentetan.

Jika fungsi preg_replace() menemui padanan, ia akan mengembalikan $subjek yang diganti, jika tidak ia akan mengembalikan $subjek yang tidak berubah. Setiap parameter fungsi preg_replace() (kecuali parameter $limit) boleh menjadi tatasusunan. Jika parameter $pattern dan parameter $replacement adalah kedua-dua tatasusunan, fungsi akan memproses kekunci mengikut susunan ia muncul dalam tatasusunan. Jika ralat berlaku, NULL dikembalikan.

Parameter $replacement boleh mengandungi rujukan belakang \n atau $n, dengan yang terakhir diutamakan secara sintaksis. Setiap rujukan tersebut akan digantikan dengan teks yang ditangkap oleh subkumpulan penangkapan ke-n yang telah dipadankan. n boleh menjadi 0-99, dengan \0 dan $0 mewakili teks padanan corak yang lengkap.

Kaedah pengiraan nombor siri untuk menangkap subkumpulan ialah: kurungan kiri yang mewakili subkumpulan yang menangkap dikira dari kiri ke kanan, bermula dari 1. Jika anda ingin menggunakan garis miring ke belakang dalam $replacement, anda mesti menggunakan 4 ("\\" kerana ini adalah rentetan PHP pertama, kemudian dua selepas melarikan diri, dan kemudian ia dianggap sebagai teks asal selepas melalui garis miring ke belakang enjin ungkapan biasa).

Apabila bekerja dalam mod gantian dan rujukan belakang perlu diikuti oleh nombor lain (contohnya: menambah nombor asal serta-merta selepas corak yang sepadan), anda tidak boleh menggunakan sintaks \1 untuk menerangkan Rujukan Balik. Sebagai contoh, \11 akan menyebabkan preg_replace() tidak memahami sama ada anda mahu rujukan belakang \1 diikuti dengan 1 asal, atau rujukan belakang \11 diikuti dengan apa-apa. Penyelesaian dalam kes ini ialah menggunakan ${1}1. Ini mencipta rujukan belakang yang berasingan untuk $1, rujukan belakang yang berasingan untuk sumber 1.

Apabila menggunakan pengubah suai e yang ditamatkan, fungsi ini akan melarikan diri daripada beberapa aksara (iaitu: ', ", dan NULL) dan kemudian melakukan penggantian rujukan belakang. Apabila ini selesai, sila pastikan untuk membuat rujukan belakang Selepas menghuraikan, tiada ralat sintaks yang disebabkan oleh petikan tunggal atau petikan berganda (contohnya: 'strlen('$1') strlen("$2")'). enjin akan menilai rentetan hasil sebagai kod php menggunakan kaedah eval dan menggunakan nilai pulangan sebagai rentetan akhir yang mengambil bahagian dalam penggantian

.

mb_strlen()函数可以计算英文字符串、中文字符串或中英混合字符串的长度。

mb_strlen($str [, $encoding = mb_internal_encoding()])
Salin selepas log masuk
  • $str 为需要计算长度的字符串

  • $encoding 是可选参数,为字符编码,如果省略则使用内部字符编码。

mb_strlen() 函数的返回值为具有 $encoding 编码的字符串 $str 所包含的字符数,如果 $encoding 无效则返回 false。

注意:在 mb_strlen() 函数中,无论是汉字,还是英文、数字、小数点、下划线和空格,都只占一个字符长度。

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci Bagaimana untuk mengesan berapa banyak aksara Cina yang terkandung dalam rentetan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini 7 Fungsi PHP Saya Menyesal Saya Tidak Tahu Sebelum ini Nov 13, 2024 am 09:42 AM

Jika anda seorang pembangun PHP yang berpengalaman, anda mungkin merasakan bahawa anda telah berada di sana dan telah melakukannya. Anda telah membangunkan sejumlah besar aplikasi, menyahpenyahpepijat berjuta-juta baris kod dan mengubah suai sekumpulan skrip untuk mencapai op

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Apr 05, 2025 am 12:04 AM

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Bagaimana anda menghuraikan dan memproses HTML/XML dalam PHP? Feb 07, 2025 am 11:57 AM

Tutorial ini menunjukkan cara memproses dokumen XML dengan cekap menggunakan PHP. XML (bahasa markup extensible) adalah bahasa markup berasaskan teks yang serba boleh yang direka untuk pembacaan manusia dan parsing mesin. Ia biasanya digunakan untuk penyimpanan data

Program PHP untuk mengira vokal dalam rentetan Program PHP untuk mengira vokal dalam rentetan Feb 07, 2025 pm 12:12 PM

Rentetan adalah urutan aksara, termasuk huruf, nombor, dan simbol. Tutorial ini akan mempelajari cara mengira bilangan vokal dalam rentetan yang diberikan dalam PHP menggunakan kaedah yang berbeza. Vokal dalam bahasa Inggeris adalah a, e, i, o, u, dan mereka boleh menjadi huruf besar atau huruf kecil. Apa itu vokal? Vokal adalah watak abjad yang mewakili sebutan tertentu. Terdapat lima vokal dalam bahasa Inggeris, termasuk huruf besar dan huruf kecil: a, e, i, o, u Contoh 1 Input: String = "TutorialSpoint" Output: 6 menjelaskan Vokal dalam rentetan "TutorialSpoint" adalah u, o, i, a, o, i. Terdapat 6 yuan sebanyak 6

Terangkan pengikatan statik lewat dalam php (statik: :). Terangkan pengikatan statik lewat dalam php (statik: :). Apr 03, 2025 am 12:04 AM

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apakah kaedah Magic PHP (__construct, __destruct, __call, __get, __set, dll) dan menyediakan kes penggunaan? Apr 03, 2025 am 12:03 AM

Apakah kaedah sihir PHP? Kaedah sihir PHP termasuk: 1. \ _ \ _ Membina, digunakan untuk memulakan objek; 2. \ _ \ _ Destruct, digunakan untuk membersihkan sumber; 3. \ _ \ _ Call, mengendalikan panggilan kaedah yang tidak wujud; 4. \ _ \ _ Mendapatkan, melaksanakan akses atribut dinamik; 5. \ _ \ _ Set, melaksanakan tetapan atribut dinamik. Kaedah ini secara automatik dipanggil dalam situasi tertentu, meningkatkan fleksibiliti dan kecekapan kod.

See all articles