XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

 

 

<a href="/index.php?mid=test&document_url=15424">

에서 15424 만 뽑아내고 싶은데

 

/<a[^>]* href=(/[^0-9]*/s)\\1[^>]*>/is

이렇게 하면 다른 링크들까지 모조리 나와버리는데 document_url 뒤에 있는 숫자만 뽑으려면 

정규표현식을 어떻게 써야될까요

  • profile
    기진곰 2016.10.24 22:21:31

    /<a[^>]* href="[^">]*document_srl=([0-9]+)[^">]*"[^>]*>/is

     

    document_url이 아니라 document_srl입니다 ㅎㅎ

    근데 만약 짧은주소를 사용하신다면 저것도 안 되겠네요.

  • ?
    SimpleCode 2016.10.24 22:35:02
    정규표현식도 좋지만, 가끔은 고전적인 방법으로 접근하는 것이 쉬울 때도 있습니다.
    그냥 참고하시라고 올려봅니다.

    <?php
    function getData($url, $retrieve_key) {
    if(!$url) {
    return NULL;
    }

    $query = parse_url($url, PHP_URL_QUERY);
    if(!$query) {
    return NULL;
    }

    $pairs = explode('&', $query);

    foreach($pairs as $pair) {
    list($key, $value) = explode('=', $pair);

    if($key === $retrieve_key) {
    return $value;
    }
    }

    return NULL;
    }

    echo getData('/index.php?mid=test&document_srl=15424', 'document_srl');
    ?>
  • profile
    기진곰 2016.10.24 22:41:16

    글 쓰신 분은 링크 주소가 아니라 HTML 소스 전체를 갖고 작업하셔야 하는 상황인 것 같으니

    일단 정규식으로 링크를 모두 뽑아낸 후, 이런 함수를 사용해서 문서번호를 추출해 내도 되겠네요.

     

    explode 이하는 parse_str 함수로 대체하면 더욱 좋습니다 ㅎㅎ

  • profile
    포팅! 2016.10.24 22:40:07
    /<a[^>]*href="([^=]|[^0-9])*=([^a-zA-Z&])+([^=]|[^0-9])*">/is 라고 생각했지만...
    document_srl을 문자열으로 넣는다는 생각을 못했...ㅠ
  • profile
    GG 2016.10.24 22:56:46
    저도 어렵네요 ㅠㅠ
  • profile
    하늘희 2016.10.25 02:34:28
    (?:<a[^>]* href="[^">]*document_srl=)?([0-9]+)[^">]*"[^>]*>
  • profile
    라엘 2016.10.25 10:32:31
    preg_match("/document_url=([0-9]+)/", $input_line, $output_array);
    echo $output_array[1];

List of Articles
번호 제목 글쓴이 날짜
3099 소셜 로그인 모듈 관련 제발 한번만 읽어주세요. 14 penglover 2016.10.26
3098 7만원대의 해외 VPS vs 국내 서버호스팅 23 고라자 2016.10.25
3097 이모티콘이 관리자에게만 출력됩니다. 9 file 데버 2016.10.25
3096 라이믹스 자체 익명 기능 질문드립니다 1 고라자 2016.10.25
3095 클라우드 플레어 이미지파일외에도 캐싱이 되는건가요? 4 이니그마 2016.10.25
3094 이 사이트에 있는 글쓸때 경고문표시 애드온은 어디에??? 4 투데이 2016.10.25
3093 조회수 증가 논리가 궁금해요 3 디지털리스트 2016.10.25
3092 취약점 디렉토리 리스팅 관련 문의 입니다. 1 masu**** 2016.10.25
3091 mysql UPDATE 이용시에 쌍따옴표 검색가능할까요? 9 고양이 2016.10.25
3090 [네이버 사이트 등록] 도메인 리디렉션 문의 4 메비우스의닭 2016.10.25
3089 네이버 아이디로 로그인-네이버 서비스 연동 해제시 Callback URL을 어떻게 입력해야하나요? 5 일단놓고말해 2016.10.25
» 정규표현식 진짜 어렵네요 ㅠㅠ url 에서 글 번호만 뽑고싶은데 7 비누 2016.10.24
3087 사용하는 위젯의 MID와 모듈의 폴더명이 같은경우 6 웹지기 2016.10.24
3086 갤러리 masonry grid 플러그인 이용하시는분들 계신가요? 4 sami 2016.10.24
3085 가끔 의문의 트래픽 초과문제 1 재키 2016.10.24
3084 위젯페이지에 검색박스를 넣고싶습니다 스포 2016.10.24
3083 갑자기 먹통이 되었습니다. 도와주세요.. 9 file December 2016.10.24
3082 긴급질문 호스팅 DB가 갑자기 안붙습니다. 2 투데이 2016.10.24
3081 가입완료 페이지를 수동으로 설정 가능한 방법이 있을까요? 1 엘비스 2016.10.24
3080 내 홈페이지 게시물을 7 트리플라워 2016.10.23
Board Pagination Prev 1 ... 65 66 67 68 69 70 71 72 73 74 ... 224 Next
/ 224
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...