2016-05-14 16 views
1

この正規表現.*\?(a\=([0-9]{3,4}))を使用して、任意のURLをクエリ文字列?a = {{ここでの乱数}}に一致させます。 3または4桁のクエリ文字列と一致する必要があります。URLと特定のクエリ文字列パラメータを一致させる正規表現

たとえば、

http://www.test.com/test/test-test-test/?a=12 
http://www.test.com/test-test/news/?a=734 
http://www.test.com/test/?a=0987 
http://www.test.com/test/test-test-test/?a=90235 

彼らは、クエリ文字列3または4桁の数字が含まれているとして、私の正規表現は、第2および第3のリンクと一致する必要があります。

私はこのツールhttp://www.regexpal.com/を使用していますが、それは2番目のリンクのみを強調表示しています。

答えて

1

この正規表現を試してみてください:

.+\/\?a=([0-9]{3,4})$ 
  • /.+\/\?a=([0-9]{3,4})$/gm
  • .+マッチ(改行を除く)任意の文字
  • Quantifier: + 1と無制限の時間の間に、できるだけ多くの回数、必要に応じて恩返し[貪欲]
  • \/は、文字/文字どおりに一致します
  • \?は文字に一致しますか? {3,4} 3〜4回、として:文字通り
  • a=は=文字通り(大文字と小文字を区別)
  • 第キャプチャグループ([0-9]{3,4})
  • [0-9]{3,4}一致 数量詞以下のリスト中に存在する単一文字の文字にマッチします必要に応じてバック与えることが可能な回数、[貪欲]
  • 0-9 0〜9
  • $アサート位置行の末尾の範囲内の単一の文字

は、それがここで働いてください:

とビジュアル表現としてhttps://regex101.com/r/sP0lR3/1

Regular expression visualization

Debuggex Demo

+1

おかげでたくさん!視覚的表現も非常に有用でした。私はdebuggexデモをチェックします。 – AlexisP

関連する問題