2017-09-13 8 views
-6

r(ege)+ xとr [ege] + xの答えは何ですか? 両方の答えが同じですか?()と[]は正規表現でどのように動作しますか?

+2

なぜ両方を試してみませんか(http://www.regex101.com)?答え: '(ege)'は 'ege'をマッチさせてキャプチャすることを意味し、' [ege] 'は' e'または 'g'の1文字にマッチすることを意味するため、同じではありません。 –

+0

'()'はキャプチャグループです(内部はすべてキャプチャグループにマッチしています)。 '[]'は文字クラスです(提案されたものの1つだけがマッチします)。 – Vivick

答えて

0

r(ege)+x式はx

可能な一致は、「正規表現」、「regeegex」、「regeegeegex」だろう文字が続く文字egeの文字列の1つまたは複数の組に続く文字rと一致し、かつますそうです。

r[ege]+xの式は、rと一致し、その後に大括弧で囲まれた文字のいずれか1つ以上が続き、その後にはxという文字が続きます。

「rex」、「rgx」、「reeex」、「rgggx」、「regegeggggx」などがあります。括弧で囲まれた式では、2番目の「e」は冗長です。

http://regex101.comなどのサイトを使用して式をテストできます。

関連する問題