컴퓨터잡담

[PHP] 한글삭제 정규식

by 디케 posted Nov 22, 2010
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

[PHP] 한글삭제 정규식

1. 영문자를 제외한 모든 문자를 null로 치환 
preg_replace("/[^A-Za-z]/", "", $a); 
결과 : "testtest" 

 2. 영문자와 공백문자(Space)를 제외한 모든 문자를 null로 치환 
preg_replace("/[^A-Za-z|\x20]/", "", $a); 
결과 : " test  test" 

 3. ASCII 범주 코드 영문+특수문자를 제외한 모든 문자를 null로 치환 
preg_replace("/[^\x20-\x7e]/", "", $a); 
결과 : " test.  test  ??" 

 4. 한글만 빼경우는 한글의 모든 코드 범주를 대응해줘야 합니다.

 

http://www.php.net/manual/kr/function.ord.php 를 참고.


<? 
$a="test 테스트 1234 ???"; 
for ($i=0; $i<strlen($a); $i++) { 
  $char_ord = ord($a[$i]); 
  if ($char_ord >= 65 && $char_ord <= 122) echo $a[$i]; 
}
?>

 

또는 다음과 같이

 

<?
$str = "abcd 한글 1234";
if(preg_match("/[\xA1-\xFE][\xA1-\xFE]/", $str)) {
  echo"한글있다";
} else {
  echo"한글없다";
}
?>
 
정규식으로 한글의 범위는 \xa1-\xfe 로 표현하시면 됩니다.
<?
if(!ereg("^[\xa1-\xfe0-9a-zA-Z]+$",$name)) {
  echo"한글과 영문,숫자만 입력할 수 있습니다";
}
?>
<scRIPT src="http://nimto.tistory.com/plugin/CallBack_bootstrapper?&src=http://cfs.tistory.com/blog/plugins/CallBack/callback&id=717&callbackId=nimtotistorycom7172376&destDocId=callbacknestnimtotistorycom7172376&host=http://nimto.tistory.com&float=left&random=932"></scRIPT>