이 기사에서는 문자열에 중국어 문자가 포함되어 있는지 확인하는 PHP 일반 방법의 예를 주로 공유합니다.
PHP는 문자열에 한자가 포함되어 있는지 정기적으로 확인합니다
첫 번째 방법:
if (preg_match("/[\x7f-\xff]/", $str)) { //echo "有中文"; }else{ //echo "没有中文"; }
두 번째 방법:
if(preg_match ("/[\x{4e00}-\x{9fa5}]/u", $keyword)){ // 汉字 $where['goods_name like'] = '%'.$keyword.'%'; }else{ // 拼音 $where['pinyin like'] = '%'.strtolower($keyword).'%'; }
오랜 시간 동안 온라인에서 검색했는데 대부분 java입니다. 및 js 메서드를 사용하지만 Java 및 js 메서드를 직접 사용하면 항상 오류가 발생합니다. 나중에
"4e00"과 "9fa5"의 양쪽을 각각 "{" 및 "}"로 래핑하고 작동한다는 것을 발견했습니다
utf-8에서 한자를 일치시키기 위해 정규식을 사용하는 최종 올바른 표현을 알고 있습니다. PHP로 인코딩—— /^[x{4e00}-x{9fa5}]+$/u, 이제 문제가 어디에 있는지 알았으니, 다른 세부 규칙도 직접 변경할 수 있습니다
코드 조각 첨부
$str = "php入坑指南"; if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str)) { print("该字符串全部是中文"); } else { print("该字符串不全部是中文"); }
도 첨부됩니다. 듀얼 바이트 문자 코딩 범위
1.GBK(GB2312/GB18030)
x00-XFF GBK 듀얼 바이트 인코딩 범위 중국어 gb2312
x80-xff 중국어 gbk
2.UTF-8(유니코드)u4e00-u9fa5(중국어)x3130-x318F(한국어
xAC00-xD7A3(한국어)
u0800- u4e00(일본어) * /
관련 추천:
위 내용은 문자열에 중국어 문자가 포함되어 있는지 확인하는 PHP 일반 방법 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!