プロが教えるわが家の防犯対策術!

> - <
> -- <
> --- <
> ---- <
> ----- <

JAVAの1つの正規表現で上記Textすべてと合致する正規表現を教えてください。

質問者からの補足コメント

  • > -{,5} <
    これが合致しないのですが、なぜでしょう?

    > -+ <
    これが合致するので、こちらでもよいのでしょうか?

      補足日時:2022/11/06 09:52
  • こちらに以下のような記述がありますが、「構文不正」という形でよろしいのでしょうか?

    正規表現:文字の「繰り返し」と、回数の指定 | WWWクリエイターズ
    https://www-creators.com/archives/2679#i-5

    // 4回以下繰り返す正規表現
    /{,4}/

    // 3回以上繰り返す正規表現
    /{3,}/

    // 10回繰り返す正規表現
    /{10}/

    No.2の回答に寄せられた補足コメントです。 補足日時:2022/11/06 14:20

A 回答 (4件)

正規表現は本当にプログラムごとに違っている. 例えばグルーピングでも \(こんなふうに\) 単純な丸括弧ではなくバックスラッシュを付けて表す, というシステムがある. ちなみに Perl は 5.34 で下限の省略が許されるようになった>#3.



あと > -{,5} < だと - が入らない > < でもマッチするはずだけどそれはいいのかな?
    • good
    • 0

補足の二番目について



Java API の説明を読みましょう。
最大省略の "X{n,}" は説明されていますが、最小省略はありません。
https://docs.oracle.com/javase/jp/17/docs/api/ja …

正規表現は実行環境ごとに構文や機能が異なるのが一般的なので、
該当環境についての説明書を確認することをお勧めします。
参考)
grep ← GNU grep 独自の拡張機能として対応
http://linuxjm.osdn.jp/html/GNU_grep/man1/grep.1 …
Perl ← 記載なし
https://perldoc.jp/docs/perl/5.26.1/perlre.pod#Q …
PHP ← 構文に適合しないと明言
https://www.php.net/manual/ja/regexp.reference.r …
JavaScript ← 記載なし
https://developer.mozilla.org/ja/docs/Web/JavaSc …
C# ← 記載なし
https://learn.microsoft.com/en-us/dotnet/standar …
    • good
    • 1
この回答へのお礼

回答ありがとうございました。

お礼日時:2022/11/06 18:51

補足について



> -{,5} <
最少回数は省略できないため構文不正です。
参考)
https://docs.oracle.com/javase/jp/17/docs/api/ja …

> -+ <
1回以上 ≠ 1回以上5回以下
6回以上の場合に合致させてもよいなら、どちらでもよいでしょう。
この回答への補足あり
    • good
    • 1

> -{1,5} <

    • good
    • 1
この回答へのお礼

回答ありがとうございます。
時間があれば補足もご覧ください。

お礼日時:2022/11/06 09:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!