DreamPHP.com에서 다루는 내용(PHP, 프로그램, 고전)에 대해서만 질문 남겨주세요.
기타 질문은 PHP스쿨의 아래 성격에 맞는 게시판에 올리면 됩니다.
리눅스/서버/설치/설정 , Mysql/Oracle/Query/DB , PHP관련/함수/프레임웍 , HTML/JS/CSS/jQuery/Ajax
모바일앱/하이브리드앱 , ASP/JSP/기타개발관련 , 개발을 제외한 일반질문
비밀번호

  • 특정문자로만 된 정규식을 구하려면 어떻게 해야할까요?

  • 짧은주소 : http://dreamphp.com/s/m0bofw

  • 작 성 자 : 마술사스

  • 조 회 수 : 191

  • 등 록 일 : 2018-02-28 11:10:36

  • ▶ PHP스쿨 > Q&A > PHP관련/함수/프레임웍 - https://phpschool.com/link/qna_function/456682

    예를들어서 값이

    사과||바나나||
    ||||
    ||
    ||||||
    딸기||포도||배||

    이렇게 되어있을 때
    ||이거로만 되어있는
    ||||
    ||
    ||||||

    이거에 대해  뽑아내려고 하는데
    정규식을 어떻게 해야할까요
  • 2018-02-28 11:15:00

  • 쥬리엘

  • $a = <<<TXT
    사과||바나나||
    ||||
    ||
    ||||||
    딸기||포도||배||
    TXT;

    preg_match_all('/^[||]+$/m', $a, $m);
    print_r($m); // Array ( [0] => Array ( [0] => |||| [1] => || [2] => |||||| ) )

  • 2018-02-28 13:14:00

  • BiHonHomepage

  • 음…. 쥬리엘 님 패턴으로 결과 나와요? 이상하네요.
    아무튼 다른 패턴으로 추가 설명까지 추가해 남깁니다.

    * 정규식 공부할 분들은 송효진 님의 게시물 참고
    - https://phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&sca=&sfl=wr_subject&stx=pcre&sop=and

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

    $text = '사과||바나나||
    ||||
    ||
    ||||||
    딸기||포도||배||';
    preg_match_all('/^|+(?:s*)$/m', $text, $matches);
    echo '<XMP>'.print_r($matches, 1).'</XMP>';

    ↓ 실행 결과

    Array
    (
        [0] => ||||
        [1] => ||
        [2] => ||||||
    )

    / / 구분자
    ^ 시작
    | 파이프 문자
    |+ 한 글자 이상
    s* 공백 관련 문자 [HT(9), LF(10), FF(12), CR(13), Space(32), NBSP(A0) 등등] 없거나 있거나
    (?:...) 캡처 안함
    $ 끝
    /m 멀티라인

    즉, 파이프 문자로 시작해 줄바꿈으로 끝나는 모든 줄입니다.

  • 2018-02-28 13:29:00

  • 쥬리엘

  • 로컬 환경이 없어서 http://phpfiddle.org/ 해당 사이트에서 테스트 해봤을땐 정상이였는데...
    뭔가 환경이 다른가보네요;;

  • 2018-02-28 13:40:00

  • 마술사스

  • 감사합니다. 공부해서 한번 진행해보겠습니다!

  • 2018-02-28 13:42:00

  • BiHonHomepage

  • 아. 그렇군요. 온라인에서 구해보는 것과 차이가 나는군요.

    - https://regex101.com/
    :
    여기나 저기나 로컬과 차이나네요.
    온라인으로만 점검하고 안심하면 안 되겠네요.

  • 2018-02-28 13:47:00

  • 쥬리엘

  • 그러게요 편의상 간단한 코드는 온라인에서 테스트 해보는데 신뢰성이 많이 떨어지네요;;

  • 2018-02-28 19:02:00

  • WikixUnknown

  • 온라인쪽은 javascript라서 좀 틀린걸로 알고 있습니다.
    언어에 따라 조금씩 차이나는 부분때문인걸로....

+ 이름

- 홈페이지

+ 내용

+ 비밀번호

* 4~20자

+ CAPTCHA

CAPTCHA Image [새로고침] (대소문자 무시)

  • 번호

  • 제목

  • 이름

  • 등록일

  • 조회수