홈피공장장

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

· 2011-04-12 (화) 12:38:46 · 2276 · 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,305
JavaScript 11-04-28 조회 2,620
기타 11-04-28 조회 2,449
MySQL 11-04-25 조회 7,436
기타 11-04-22 조회 2,561
MySQL 11-04-22 조회 2,490
PHP 11-04-21 조회 2,714
MySQL 11-04-21 조회 3,173
Flash 11-04-20 조회 2,431
기타 11-04-19 조회 2,050
JavaScript 11-04-13 조회 2,254
jQuery 11-04-12 조회 2,598
PHP 11-04-12 조회 2,277
PHP 11-04-11 조회 3,563
MySQL 11-04-08 조회 3,390
기타 11-04-01 조회 3,930
MySQL 11-03-31 조회 3,206
기타 11-03-30 조회 2,644
JavaScript 11-03-27 조회 2,716
JavaScript 11-03-27 조회 2,539
Flash 11-03-21 조회 2,379
MySQL 11-03-20 조회 3,442
기타 11-03-19 조회 2,762
Flash 11-03-18 조회 2,335
기타 11-03-17 조회 4,063
기타 11-03-17 조회 3,762
기타 11-03-17 조회 2,809
기타 11-03-17 조회 2,239
기타 11-03-15 조회 4,166
JavaScript 11-03-14 조회 1,810