PHP 정규식 패턴 모음 preg 사용
자주 사용되는 정규식 및 그누보드에서 사용하기 좋은 코드를 모아서 정리 하였다.
자주 업데이트 하지 않겠지만, 그래도 나중에 필요 할 때 찾아서 볼 수 있었으면 좋겠다.
사용된 언어는 PHP
-
핸드폰번호 – 넣어서 출력하기
$ohp = preg_replace("/\D/", "", $ohp); $ohp = preg_replace("/^([0-9]{3})([0-9]*)([0-9]{4})$/", "$1-$2-$3", $ohp); -
일반전화 – 넣어서 출력하기 함수
function TelephoneFormat($tel, $str) { $tel = preg_replace("/\D/", "", $tel); if(strlen($tel) == 12) { $tel = preg_replace("/^([0-9]{4})([0-9]*)([0-9]{4})$/", "$1{$str}$2{$str}$3", $tel); } else if(substr($tel, 0, 2) == "02") { $tel = preg_replace("/^([0-9]{2})([0-9]*)([0-9]{4})$/", "$1{$str}$2{$str}$3", $tel); } else { $tel = preg_replace("/^([0-9]{3})([0-9]*)([0-9]{4})$/", "$1{$str}$2{$str}$3", $tel); } return $tel; } // 함수 추가 하고 $tel = TelephoneFormat($tel, "-"); // 이런식으로 -
입력된 텍스트에서 line-height 스타일 찾아 제거하기 – 응용하면 직접 입력한 스타일을 제어 할 수 있음.
$row[fa_subject] = preg_replace("/line-height[\s]*:[\s]*([0-9]+)px/i", "", $row[fa_subject]); -
페이징 함수나 페이징 클래스 등으로 만들어져서 나오는 html 을 수정 할수 있는 패턴 – 그누보드용
$list_page = preg_replace("/>\s+</", "><", $list_page); $list_page = preg_replace("/<span>([0-9]+)<\/span>/", "$1", $list_page); $list_page = preg_replace("/<span class=\"currentPage\">([0-9]+)<\/span>/", "<strong>$1</strong>", $list_page); $list_page = preg_replace("/<a href=\"([^\"]+)\">처음<\/a>/i", "<a href=\"$1\" class='prev'>처음</a>", $list_page); $list_page = preg_replace("/<a href=\"([^\"]+)\">이전<\/a>/i", "<a href=\"$1\" class='prev'>이전</a>", $list_page); $list_page = preg_replace("/<a href=\"([^\"]+)\">다음<\/a>/i", "<a href=\"$1\" class='next'>다음</a>", $list_page); $list_page = preg_replace("/<a href=\"([^\"]+)\">마지막<\/a>/i", "<a href=\"$1\" class='next'>마지막</a>", $list_page); -
그누보드 페이징 링크주소에서 페이지 번호만 불러내서 자바스크립트로 변경하기
$qstr = preg_replace("/&page\=([0-9]+)/", "", $qstr); $pagelist = get_paging(10, $page, $total_page, "?{$qstr}&page="); $pagelist = str_replace(" ", "\n", $pagelist); // 한줄씩 해석을해야 되기 때문에 줄단위로 띄워줌 $pagelist = preg_replace("/href=\'(.+)&page=([0-9]+)\'/", "href=\"Javascript:LoadProfileRight('{$mb_id}', 'album', '$2')\"", $pagelist);- 그누보드
common.php에서 자동으로 자동으로 만들어지는$qstr변수에 기본적으로page=가 있기 때문에 만약 그대로 사용하면 page 변수가 중복되서 출력이 된다. 그러므로 그전에$qstr변수에서page=삭제 해야 한다.
- 그누보드
-
그누보드
$qstr변수에서 page 를 뺀다.$wr_1_qstr = preg_replace("/(&|)page\=([0-9]*)/", "", $qstr); -
한글, 영문, 숫자일 경우에만 true 출력(한글은 UTF-8 유니코드에서만)
preg_match("/[\x{1100}-\x{11FF}\x{3130}-\x{318F}\x{AC00}-\x{D7AF}a-zA-Z0-9\s]+/u", $split_nick) //한글패턴 : \x{1100}-\x{11FF}\x{3130}-\x{318F}\x{AC00}-\x{D7AF}
이 저작물은 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 4.0 국제 라이선스 에 따라 이용할 수 있습니다.
Comments
Related Posts
그누보드4 아이디 변경 함수 - 모든 테이블의 아이디를 변경
그누보드 사용시 아이디값을 이메일등으로 사용하거나 아이디를 변경하게 하도록 하는 사이트들이 존재 한다. 그누보드에서는 아이디 값이 게시판테이블에서나 포인트등 에서 회원을 구분하…
GD를 이용한 기본기능 썸네일,CROP,CROP썸네일,텍스트 만들기에 기능추가
GD Library를 이용한 Thumbnail 생성 클래스입니다. 기본적인 이미지 리사이징 및 리사이징과 동시에 비율에 맞춰 Crop 하는 기능이 있고, 워터마크를 추가 할 수…
$_SERVER[QUERY_STRING] 특정 파라미터 삭제 출력하기
PHP의 를 이용하여 Get 방식의 Method 처리를 할 경우 특정 파라미터를 제거하거나 추가해 줘야 하는 경우가 있다. 보통 게시판의 페이징 작업을 할 때 주로 사용되는데,…