Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

青灯夜游
青灯夜游asal
2022-12-15 16:35:216421semak imbas

Anda boleh menilai. Kaedah penghakiman: 1. Gunakan fungsi preg_match() dengan ungkapan biasa untuk menentukan sama ada semuanya adalah bahasa Cina, sintaksnya ialah "!preg_match("/[^x80-xff]/i",$str)"; fungsi preg_match() dengan ungkapan biasa Untuk menentukan sama ada ia mengandungi bahasa Cina, sintaksnya ialah "preg_match("/[x7f-xff]/", $str)" atau "preg_match('/[^x00-x80]/' ,$str)".

Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

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

php boleh menentukan sama ada rentetan itu adalah bahasa Cina , terutamanya Ia ditentukan dengan menggunakan padanan Cina biasa.

Penghakiman boleh dibahagikan kepada dua situasi:

  • Rentetan adalah semua aksara Cina

  • Rentetan mengandungi bahasa Cina

Kes 1: Penghakiman adalah semua bahasa Cina

Kaedah: fungsi preg_match() + ungkapan biasa "/[^x80-xff]/i

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = "12hello13";
$str="&#39;324是"; 
if(!preg_match("/[^\x80-\xff]/i",$str)){ 
echo "全是中文,是中文字符串"; 
}else{ 
echo "不是中文字符串"; 
} 
?>

Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

Kes 2: Tentukan sama ada ia mengandungi Bahasa Cina

Kaedah 1: fungsi preg_match() + biasa ungkapan "/[x7f-xff]/"

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = "中文"; 
if (preg_match("/[\x7f-\xff]/", $str)) { 
echo "含有中文"; 
}else{ 
echo "没有中文"; 
} 
?>

Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

Kaedah 2: fungsi preg_match() + ungkapan biasa "/[^x00-x80]/"

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = "1234"; 
$pattern = &#39;/[^\x00-\x80]/&#39;; 
if(preg_match($pattern,$str)){ 
echo "含有中文"; 
}else{ 
echo "没有中文"; 
}
?>

Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?

Penerangan fungsi: preg_match()

Fungsi preg_match() dalam PHP boleh mencari dan memadankan rentetan berdasarkan ungkapan biasa Formatnya adalah seperti berikut:

preg_match($pattern,$subject [, &$matches [, $flags = 0 [, $offset = 0 ]]])

Penerangan parameter adalah seperti berikut:

  • $pattern: corak yang hendak dicari, iaitu yang diedit ungkapan biasa;

  • $subjek: rentetan untuk dicari; , ia akan diisi sebagai hasil carian. $matches[0] mengandungi teks yang dipadankan dengan corak lengkap, $matches[1] mengandungi teks yang dipadankan oleh subkumpulan tangkapan pertama, dan seterusnya

  • $flags: Ya Pilihan; parameter, $flags boleh ditetapkan kepada PREG_OFFSET_CAPTURE Jika bendera ini diluluskan, untuk setiap kejadian padanan, rentetan mengimbangi (berbanding dengan rentetan sasaran) akan ditambahkan pada pemulangan; 🎜>$offset: Parameter pilihan, digunakan untuk menentukan kedudukan rentetan sasaran untuk mula mencari daripada (unit ialah bait).

  • Fungsi preg_match() boleh mengembalikan bilangan padanan untuk $pattern, nilainya ialah 0 kali (tiada padanan) atau 1 kali, kerana preg_match() akan Carian akan berhenti .

  • Pembelajaran yang disyorkan: "
  • Tutorial Video PHP

    "

Atas ialah kandungan terperinci Bolehkah php menentukan sama ada rentetan adalah bahasa Cina?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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