私は正しいフィルタを取得しようとしています:
{0}{1/2}{R/G}{X}{Y}{Z}{R}{R}
rubular.com ( http://rubular.com/r/niCiKoUfmN )でこれを試しました:
\{([0-Z])\}
私は得る:
{0}{X}{Y}{Z}{R}{R}
しかし、私は得られません:
{1/2}{R/G}
すべてを取得するように正規表現を作成するにはどうすればよいですか?
私は正しいフィルタを取得しようとしています:
{0}{1/2}{R/G}{X}{Y}{Z}{R}{R}
rubular.com ( http://rubular.com/r/niCiKoUfmN )でこれを試しました:
\{([0-Z])\}
私は得る:
{0}{X}{Y}{Z}{R}{R}
しかし、私は得られません:
{1/2}{R/G}
すべてを取得するように正規表現を作成するにはどうすればよいですか?
根本的な方法は、避けたい文字で否定された文字クラスを使用することです。
\{([^}]*)\}
[^}]
を除くすべての文字を意味します。}
*
ゼロ回以上を意味します
グループにスラッシュ記号 (/) がありません。さらに、パーサーに伝えるために量指定子を追加する必要があります。括弧内の文字を増やすことができます。
\{([0-Z/]+)\}
オプションを追加することでこれを行うことができます/[0-Z]
これはあなたに与えるでしょう:
\{([0-Z](\/[0-Z])?)\}
これはそれを行う必要があります:
\{[0-Z\/]+\}
一致のサブセットを他の何かに使用したい場合を除き、括弧は必要ありません。