php 정규식 문제점

PHP 2020. 8. 21. 19:42

다른 사이트 보면, preg_match 메소드를 쓰면, 한글이 잘 검색되는 것 처럼 나옵니다.

하지만 가끔 웹호스팅을 받다보면, 안되는 곳이 있습니다. (사실 preg_match를 써서 한글 정규식 검사가 제대로 된 경우를 만난적이 없습니다. 저는.)

그래서, mb_ereg_match를 쓰는데, 한글 검사가 잘됩니다.

하지만, 처음 쓸때 오류를 마구 만났습니다. 이유는 preg_match 슬래쉬 사이에 정규식패턴을 넣어줘야 하고, mb_ereg_match는 입력하면 안되기 때문입니다. 각각 아래와 같이 입력해야 합니다.

if( !mb_ereg_match( "^[가-힣]{2,16}$", $nickname ) ) return "한글 2~16자로 입력해 주세요";

if( !preg_match( "/^[a-zA-Z0-9]{2,8}$/", $id ) ) return "영어, 숫자 조합으로 2~8자로 입력해 주세요.";

사실, php 매뉴얼에 나와있지만 같겠지라고 생각하다 오류를 만날수 있습니다. (제가 그랬습니다. ㅠ,.ㅜ)

 

Posted by 창업닉군
,