本篇文章為大家展示了怎么在php中使用正則表達(dá)式對漢字進(jìn)行匹配,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供盧氏網(wǎng)站建設(shè)、盧氏做網(wǎng)站、盧氏網(wǎng)站設(shè)計、盧氏網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、盧氏企業(yè)網(wǎng)站模板建站服務(wù),十年盧氏做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。php正則匹配漢字!
/^[\x{4e00}-\x{9fa5}]+$/u
以上這個正則表達(dá)式就是困擾了很多php程序員的匹配漢字的正則表達(dá)式
大家可能會覺得很簡單,實際上不同編碼,不同程序語言,都有些細(xì)微的出入,稍不注意就得不到正確的結(jié)果。
下面是utf-8編碼的例子:$str = "漢字";
if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) {
print("該字符串全部是中文");
} else {
print("該字符串不全部是中文");
}
下面的例子包含gbk,gb2312的例子:
$action = trim($_GET['action']);
if($action == "sub")
{
$str = $_POST['dir'];
//if(!preg_match("/^[".chr(0xa1)."-".chr(0xff)."A-Za-z0-9_]+$/",$str)) //GB2312漢字字母數(shù)字下劃線正則表達(dá)式
if(!preg_match("/^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u",$str)) //UTF-8漢字字母數(shù)字下劃線正則表達(dá)式
{
echo "您輸入的[".$str."]含有違法字符";
}
else
{
echo "您輸入的[".$str."]完全合法,通過!";
}
}
?>
上述內(nèi)容就是怎么在php中使用正則表達(dá)式對漢字進(jìn)行匹配,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。