在php中,可用preg_match_all()配合正規表示式來過濾字串,只保留英文字母;語法「preg_match_all("/[a-zA-Z]/u","$str", $arr)”,字母會存入數組中,可利用join()將數組轉為字串。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
php只保留英文字母
可以利用preg_match_all()函數來配合正規表示式來過濾字串,只保留英文字母
preg_match_all()函數會將符合的字元(保留的英文字母)一個個存入數組中(該數組由第三個參數指定)。
<?php header("Content-type:text/html;charset=utf-8"); $str = "php.cn23v457zblog,?#$%^&())*(&^"; preg_match_all("/[a-zA-Z]/u","$str",$arr); var_dump($arr); ?>
可以看出,結果是一個二維陣列。
如果想要使用join()函數將結果值拼接成一個字串,則需要使用下列語句
join('',$arr[0])
說明:preg_match_all()--執行全域正規表示式符合
preg_match_all()函數可以搜尋字串中所有可以和正規表示式匹配的結果,語法格式如下:
preg_match_all($pattern, $subject [, &$matches [, $flags = PREG_PATTERN_ORDER [, $offset = 0 ]]])
參數說明如下:
preg_match_all() 函數可以傳回 $pattern 的符合次數(可能是 0),如果發生錯誤則傳回 FALSE。
推薦學習:《PHP影片教學》
以上是php怎麼只保留英文字母的詳細內容。更多資訊請關注PHP中文網其他相關文章!