私はこの正規表現を持っています:
((?:website.com\/video\/)(\d+))|((?:video_id=)(\d+))
そして、必要なパターンとうまく一致します(例: http://website.com/video/1337、 http://website.com/video/?video_id1337 )。
ただし、URL からトークンを抽出する必要がある場合があります (トークンが常に存在するとは限りません)。そのため、URL の例はhttp://website.com/video/?video_id1337&token=1337videoになります。
トークンを抽出できる別の正規表現があります。/(?:token=)(\w+)/
これは機能しますが、2つの正規表現をグループ化しようとすると、2番目の正規表現が機能しなくなります。それらをグループ化しようとしている方法は次のとおりです。
((?:website.com\/video\/)(\d+))|((?:video_id=)(\d+)|(?:token=)(\w+))
両方が機能するように、それらを適切にグループ化するにはどうすればよいですか?