Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php

Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php

青灯夜游
青灯夜游asal
2022-04-22 19:48:364211semak imbas

Dalam PHP, anda boleh menggunakan fungsi preg_match() dengan ungkapan biasa "/^[a-zA-Zs] $/" untuk mengesan sama ada rentetan hanya mempunyai huruf Sintaks "preg_match("/. ^[a-zA -Zs] $/",string)"; jika nilai pulangan ialah 1, hanya huruf dikembalikan, jika 0 dikembalikan, aksara lain disertakan.

Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php

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

php mengesan sama ada rentetan hanya mempunyai huruf , dalam erti kata lain Iaitu: Tentukan sama ada rentetan itu ialah huruf Inggeris tulen

Dalam php, anda boleh menggunakan fungsi preg_match() dengan ungkapan biasa untuk menyemak.

Ungkapan biasa yang digunakan: "/^[a-zA-Zs] $/"

fungsi preg_match() boleh mencari dan memadankan rentetan berdasarkan ungkapan biasa , format sintaks daripada fungsi adalah seperti berikut:

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

Penerangan parameter adalah seperti berikut:

  • $pattern: corak yang hendak dicari, iaitu ungkapan biasa yang disunting
  • $subject: rentetan yang hendak dicari;
  • $matches: parameter pilihan (jenis array), jika $matches disediakan, ia akan diisi sebagai hasil carian. $matches[0] mengandungi teks yang dipadankan dengan corak lengkap, $matches[1] mengandungi teks yang dipadankan dengan subkumpulan tangkapan pertama, dan seterusnya
  • $flags: parameter pilihan, $flags can Is set kepada PREG_OFFSET_CAPTURE Jika teg ini diluluskan, untuk setiap kejadian padanan, rentetan mengimbangi (relatif kepada rentetan sasaran) akan ditambahkan pada pemulangan
  • $offset: parameter pilihan, Digunakan untuk menentukan tempat mula mencari dalam rentetan sasaran (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 berhenti mencari selepas perlawanan pertama. .

Jika nilai pulangan ialah 1 ia bermakna hanya huruf, jika nilai pulangan ialah 0 ia termasuk aksara lain.

Contoh:

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);  
echo preg_match("/^[a-zA-Z\s]+$/","abcddfkj")."<br>";
echo preg_match("/^[a-zA-Z\s]+$/","ab12kj");
?>

Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php

Output jenis ini tidak begitu baik. Mari sesuaikan fungsi untuk melakukan pemprosesan dan mengembalikan huruf sahaja . benar, jika tidak kembali palsu

function is_english($str)
{
    if(preg_match("/^[a-zA-Z\s]+$/",$str)){
        return true;
    }
    return false;
}

Panggil fungsi untuk menentukan sama ada rentetan itu terdiri daripada huruf Inggeris tulen

var_dump(is_english(&#39;php.cn&#39;)); 
// bool(false)   含有标点符号所以返回 false  
var_dump(is_english(&#39;phpcn&#39;));  
// bool(true)
var_dump(is_english(&#39;phpcn123&#39;)); 
// bool(false)   含有123
var_dump(is_english(&#39;欢迎来到这里&#39;)); 
// bool(false)   都是中文

Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk mengesan jika rentetan hanya mempunyai huruf dalam php. 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