5

これは最終的にはより大きな式の一部になりますが、ここではより単純な形式に縮小しました (つまり、ここで可能な 19 文字ではなく、40 文字の可能性があります)。次の入力があるとします。

;123?T

この正規表現に対して成功した一致を取得します。

^(?:;(\d{0,19})\?.){1,40}$

ただし、この正規表現とは一致しません。

^(?:;(\d{0,19})\?.){3,40}$

私が変更しているのは最小の長さだけで、どちらも入力が満たす必要があります。最初のものは一致を見つけ、2番目のものは見つけられないのはなぜですか? 多分私はこの量指定子を理解していないだけかもしれませんが、単純に {MIN, MAX} だと思っていました。

また、次のオンライン テスターの両方でこれをテストしました。

正規表現.info

regexpal.com

4

1 に答える 1