1

スペースで区切られた整数の文字列で繰り返しサブシーケンスを見つける必要があります。

たとえば、文字列の場合

1 2 3 4 5 6 7 8 9 10 8 9 10 11 12

それはそのようになります

8 9 10

私はこの正規表現を思いついた

(?<=\s)(\d+(:? \d+(?= ))+) \1+

次のように、繰り返し回数が 4 回を超えるまでうまく機能します。

1 2 3 4 5 6 7 8 9 10 8 9 10 8 9 10 8 9 10 11 12

ここで、最初のグループが最長の繰り返しをキャプチャします。

8 9 10 8 9 10

最短のものをキャプチャし続けるにはどうすればよいですか?

4

1 に答える 1