首頁 >後端開發 >PHP問題 >php字串怎麼只保留字母

php字串怎麼只保留字母

青灯夜游
青灯夜游原創
2022-08-29 19:44:002894瀏覽

實作步驟:1、利用preg_match_all()函數來配合正規表示式來過濾字串,只保留英文字母,語法「preg_match_all("/[a-zA-Z]/u","$str ",$arr);”,字母會存入“$arr”數組中;2、使用implode()函數將結果值拼接成一個新字串即可,語法“implode($arr[0])”。

php字串怎麼只保留字母

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

在php中,可以利用preg_match_all()函數和implode()函數來讓字串中只有字母。

實作步驟:

步驟1:利用preg_match_all()函數來搭配正規表示式來過濾字串,只保留英文字母

#preg_match_all()函數符合字串中所有出現的模式。

preg_match_all (pattern , subject ,matches,flags,offset);
  • pattern::要搜尋的模式,字串形式。

  • subject:輸入字串。

  • matches:多維數組,作為輸出參數輸出所有匹配結果, 數組排序透過flags指定。

  • flags:陣列結果排序,可以結合下面的幾個標記使用

  • offset: 通常, 查找時從目標字串的開始位置開始。 (單位為位元組)

<?php
header("Content-type:text/html;charset=utf-8");
$str = "php.cn23v457zblog,?#$%^&())*(&^";
echo "原字符串:";
var_dump($str);
preg_match_all("/[a-zA-Z]/u","$str",$arr);
var_dump($arr);
?>

php字串怎麼只保留字母

可以看出,結果是二維陣列。

所需的英文字母在內部的子數組$arr[0]中,將其轉為字串即可。

步驟2:使用implode()函數將結果值拼接成一個字串

#implode() 函數可以將一個一維陣列轉換為字串。語法如下:

implode($glue,$arr)
可選。用來設定字串,表示使用 $glue 將陣列每個元素連接在一起,預設為 $glue 為空字串。 必要。要組合為字串的陣列。
參數 描述
##$glue
$arr
implode() 函數會傳回由陣列元素和「$glue」字元組合成的字串。

<?php
header("Content-type:text/html;charset=utf-8");
$str = "php.cn23v457zblog,?#$%^&())*(&^";
echo "原字符串:";
var_dump($str);
preg_match_all("/[a-zA-Z]/u","$str",$arr);
var_dump($arr);
$newStr=implode($arr[0]);
echo "处理后的字符串:";
var_dump($newStr);
?>

php字串怎麼只保留字母

推薦學習:《

PHP影片教學

以上是php字串怎麼只保留字母的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn