1
私はregexを使っていくつかのテキストを解析しようとしていて、2つの異なるタグの下で同じテキストをつかむ必要があり、 。ここで私は持ってしようとしているテキストのサンプルです。再帰正規表現、2つの異なるタグの下で同じテキストをキャプチャする
Reputation=High risk ProtocolP=SSL client Web_Application=YouTube URL=https://youtube.com
そして、ここで私がこれまで書いてきた正規表現がされています。
^Reputation=(?<rep>.*?)\sProtocol=(?<prot>.*?)\sWeb_Application=(?<webapp>.*?)\sURL=(?<url>[http|https].*?)\sSource_IP=(?<sip>.*?)\s
これは私が最初に必要とするものですが、URLセクションに2番目のタグを追加してドメイン名のみを取得する必要があります。たとえば、https://youtube.com
ドメインがhttps://m.youtube.com
の場合は、それも同様にキャプチャする必要があります。
これを行う方法はありますか?
'評判=ハイリスクProtocolP = SSLクライアントWeb_Application以外1+文字で続く= YouTubeのURL = https://でyoutube.com'これは生データです。いいえ、残念ながらXML断片解析機能はありません。 –
'URL =(?(?:http | https)://(? [^ /] +)。*?)'で 'URL =(? [http | https]。*?) 。 https://regex101.com/r/pB0tN7/1 –
を参照してください。残念ながら、これは何らかの理由で機能しません。 私はこの種の作品を時々URL =(? https ?: //(? [^/s] +)(?:/ [^ s] +)?)\ s + '問題にしています非常に打撃を受け、捕獲されたものを逃す。場合によってはURLとドメインの両方を取得することもあります。 https://をドメイン名の後ろに置くか、ドメイン名の/の後ろに何も置かずにhttp://を入力します。 URLとドメインを保証する方法がわからない –