홈피공장장

문자열 추출 - 정규식 질문하고 여기에 답을 올립니다. 많이 쓰는건데. 전 할때마다 헷갈려서리. ,,

· 2011-04-12 (화) 12:38:46 · 2270 · 1
데이타값이..

b00011, b01122, b02233, b03344..... 이렇게 가는데요

정규식으로

무조건 b0 로만 시작하며, 자리수는 4자리만 뽑는 경우 / 즉.. 위의 예에서 b000, b011, b022, b033 만 뺀다

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

phpschool "BiHon" 님의 답변입니다.

preg_match_all('/b0\d{2}/','b00011, b01122, b02233, b03344',$matches);

print_r($matches[0]);

실행 결과
Array
(
[0] => b000
[1] => b011
[2] => b022
[3] => b033
)

‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥

정규식 사용하지 않아도 됩니다.

$string = 'b00011, b01122, b02233, b03344';
$temp = explode(', ',$string);
foreach ( $temp as $one )
{
if ( substr($one,0,2)!='b0' ) continue;
echo substr($one,0,4).'<br />';
}

실행 결과
b000
b011
b022
b033

‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥

$string = 'b00011, b01122, b02233, b03344';
$temp = explode('b0',$string); array_shift($temp);
foreach ( $temp as $one ) echo 'b0'.substr($one,0,2).'<br />';

실행 결과
b000
b011
b022
b033<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]</div>
|

댓글 1개

확실히 정규식을 알면 소스가 간결해져요
expldoe, split , substr 등등 다 안해도 되니.. 모르면 이리 돌리고 저리 돌리고
있는 삽질 없는 삽질 다 해서 만들어야 하죠 ㅎㅎㅎㅎ
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
JavaScript 11-04-28 조회 2,300
JavaScript 11-04-28 조회 2,616
기타 11-04-28 조회 2,446
MySQL 11-04-25 조회 7,430
기타 11-04-22 조회 2,556
MySQL 11-04-22 조회 2,487
PHP 11-04-21 조회 2,711
MySQL 11-04-21 조회 3,168
Flash 11-04-20 조회 2,425
기타 11-04-19 조회 2,046
JavaScript 11-04-13 조회 2,249
jQuery 11-04-12 조회 2,595
PHP 11-04-12 조회 2,271
PHP 11-04-11 조회 3,560
MySQL 11-04-08 조회 3,385
기타 11-04-01 조회 3,925
MySQL 11-03-31 조회 3,197
기타 11-03-30 조회 2,641
JavaScript 11-03-27 조회 2,713
JavaScript 11-03-27 조회 2,537
Flash 11-03-21 조회 2,375
MySQL 11-03-20 조회 3,437
기타 11-03-19 조회 2,759
Flash 11-03-18 조회 2,332
기타 11-03-17 조회 4,060
기타 11-03-17 조회 3,761
기타 11-03-17 조회 2,802
기타 11-03-17 조회 2,231
기타 11-03-15 조회 4,161
JavaScript 11-03-14 조회 1,803