2016-09-22 4 views
-1

URL을 테스트하는 데 regex를 사용하려고합니다. 거부쿼리 문자열을 검색하는 정규식

www.mystite.com/whatever/?bla=dfgsd&page=test 
www.mystite.com/whatever/?bla=dfgsd&page=test& 
www.mystite.com/whatever/?bla=dfgsd&page=test&hello=bla 
www.mystite.com/whatever/?page=test&hello=bla 
  • :

    • 사례 접수

      www.mystite.com/whatever/?hello=bla&page=testfff 
      www.mystite.com/whatever/?page=testfff&hello=bla - NOT good 
      

    때문에 미스 &page=test&, page=test& 또는 내가 뭘하려, 그리고 그것이 작동하지 않는

    :

    이 는, 제가 확인하기 위해 노력하고있어에만 물음표 후에는 도메인 및 하위 폴더를 무시할 수

    입니다

    ([^&]+)([page=test])([^&]+) 
    

  • +0

    정규 표현식을 사용하여 표현하고자하는 몇 가지 규칙을 제공하십시오. 당신이 제시 한 예들은 자명하지 않습니다. 또한 시도한 정규 표현식을 설명해 주시겠습니까? 나는 그것이하기로되어있는 것을 상상할 수 없다. –

    +2

    그리고 당신의 시도는 아주 기본적인 초급 오류가 있습니다. 그들이하는 일을 모른다면 대괄호를 사용하지 마십시오. 몇 가지 기본적인 문제 해결 팁은 [Stack Overflow'regex' tag wiki] (/ tags/regex/info)를보세요. – tripleee

    +0

    내 문자열에는 & page = test, & page = test &, page = test & 포함 할 수 있지만 & page = test [whatever], & page = 테스트 [whatever] &, page = 테스트 [whatever] –

    답변

    0

    &?page=test($|&) 
    

    이 영업 이익 "페이지 = 시험"의 모든 발행 수와 일치 :

    3 시간 동안 질문을 읽은 후 나는 지금 당신이 요구하는 것을 얻을 생각 처음에는 "&"이라고 표시됩니다. 마지막에는 "&"(선택적으로 다른 문자가 뒤따라야 함) 또는 아무것도 표시되지 않아야합니다 (문자열의 끝).

    문제가 해결 되었습니까?

    관련 문제