2017-05-05 32 views
0

私はテキスト内でdefangedされているが、苦労しているURLにマッチさせようとしています。しかし、これは私のニーズのためのビットやり過ぎで、URLは角括弧でdefangedされているところをキャッチされません、私は試合の例正規表現のURLを一致させる正規表現

([A-Za-z]+://)([-\w]+(?:\.\w[-\w]*)+)(:\d+)?(/[^.!,?;"\x27<>()\[\]{}\s\x7F-\xFF]*(?:[.!,?]+[^.!,?;"\x27<>()\[\]{}\s\x7F-\xFF]+)*)? 

:通常私はこのように、URLをキャッチするCyber​​Chefから正規表現を使用したいです探している:

http://www.google.com 
hxxp://www[.]google[.]com 
hxxp://www.google[.]com 
foob://www[.]google.com 

正規表現私がプレーしてきた:

([a-zA-Z]+:\/\/)[\w]+?\[.?\][\w]+?\[.?\][\w]+ 

しかし、これはdefangingが存在する場合にのみキャッチするようです。ヘルプは高く評価しました。

+2

は、あなたが使用することができます[\ '** + W:// \ S +' **] (https://regex101.com/r/kkULvz/1)? – revo

+0

@revoはシンプルで効果的です。いいね –

答えて

0

Aはdefungedまたはリテラルドットはそれほど正規表現は以下のようになり(?:\[\.\]|\.)のように表すことができる

(?:[a-zA-Z]+:\/\/)?[\w]+?(?:\[\.\]|\.)[\w]+?(?:\[\.\]|\.)[\w]+ 

デモ:https://regex101.com/r/mtBaeY/2

+0

非常にクールです。私の質問への更新として、URLに接頭辞hxxp://、つまりドメインだけが一致している場合にも一致する可能性がありますか?注:これは私が尋ねたことではないが、アイデアをどの程度伸ばすのが簡単か分かります。 –

+0

@ m0atz、はい、最初のグループの後ろに '?'を付けるだけです。更新された回答をご覧ください。 –

+0

あなたはお兄さんです:) –

関連する問題