테스트 사이트 - 개발 중인 베타 버전입니다

정규식으로 연락처(전화번호) 형식 변경하기

· 11년 전 · 9482 · 4
안녕하세요 ^ㅁ^

오늘은 연락처를 검색하다가 좌절하여 orz.. 구글링 하다가 적용해보았습니다.

연락처가 보통 평균적으로 010 - 0000 - 0000 으로 끝납니다.

이것을 글쓰기에서는 숫자만 넣고 글목록에서 불러올땐 3자릿수로 나눠서 불러오고 싶었거든욤.

이걸 30분만에 해결보고 팁자료실에 공유해보고자 합니다.

더 좋은 정규식이 있거나 짧게 더 해주시면 감사하겠습니다 ;ㅇ;/




============================== write.skin.php ====================================

<td class=write_head style="text-align:right">핸드폰&nbsp;&nbsp;</td><input class='ed' style="width:30%;" name=wr_5 id="wr_5" itemname="연락처" value="<?=$write[wr_5]?>"> - (하이픈)을 빼고 숫자만 입력하여 주십시오. </td>

=================================================================================



이렇게 됩니다. 물론 숫자만 들어가야 합니다.

숫자만 들어가게끔 하는것은 이 페이지의 팁을 마치고 바로 공유하도록 하겠습니다. ^^

다음은 목록에 나올 연락처를 3자릿수로 변경해줘야겠지요?



============================ list.skin.php =========================================

원래 코드 : <td class="name"><center><?=$list[$i][wr_5]?></center></td>

원래코드는 위와 같이 하면 숫자만 열거되서 나와요. 이것을 3자릿수로 변경해봅니다.






변경 코드 :

<td class="name"><center><? echo preg_replace("/(^02.{0}|^01.{1}|[0-9]{3})([0-9]+)([0-9]{4})/", "$1-$2-$3", $list[$i][wr_5]); ?></center></td>


우리가 원하는 코드는

<? echo preg_replace("/(^02.{0}|^01.{1}|[0-9]{3})([0-9]+)([0-9]{4})/", "$1-$2-$3", $list[$i][wr_5]); ?>

입니다.



여기서 그냥 봐도 알수 있듯이

첫번째 코드는 3자릿수를 변경해주는것이고

두번째 코드는 3자릿수를 구분해주는것이고

세번째 코드는 값을 불러오는것이죠.

이렇게 하면 간단하게 연락처를 구분할수 있습니다.


결과 :

01012345678 -> 010 - 1234 - 5678

=================================================================================



다음 팁으로는 위에서 설명했듯이 숫자만 들어가고 그 외는 글자는 들어가지 못하도록 하는 방법을

공유하도록 하겠습니다. 글 읽어주셔서 감사해요 ^^



출처 : http://blog.acronym.co.kr/243

코드는 출처에서 따왔어요~ 제게 아닙니다 (__ ) 꾸벅...

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 4개

저라면 그냥...
<?=substr($list[$i][wr_5],0,3) . '-' . substr($list[$i][wr_5],3,-4) . '-' . substr($list[$i][wr_5],-4)?>
우아~ 간단한방법도 있었네요. 팁 감사합니다 ^^ 유용하게 잘 쓸게요
11년 전
가운데번호가 3자리나 4자리인경우가있습니다;어떻게..
3자리나 4자리 다 해결 가능해욤

게시글 목록

번호 제목
33411
33410
33409
33408
33407
33404
33403
33402
33399
33398
33390
33386
33377
33356
33348
33340
33334
33333
33329
33322