• ベストアンサー

正規表現について

いま.Netで正規表現にチャレンジしているのですが、どこが問題なのか分からず、投稿させていただきました。 正規表現のパターンです。 \\[Cc]\[(?<$0>[0-9]+),(?<$1>[0-9]+),(?<$2>[0-9]+)\] で、マッチさせたい文字列は、 \C[255,255,255] です。「[255,255,255]」の数字の部分は、一桁から三桁までの数字であれば何でもOKです。 マッチしないことは、http://jsregex.com/を使って調べました。 どうぞよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

(?<名前>  ) は、.NET独自の表現のようですが、名前として $0 という記号を使おうとしているのが駄目なんじゃないですか? あと、http://jsregex.com/ って、.NET独自機能をサポートしているんでしょうか?サイト名からして、JavaScriptの正規表現では? とりあえず、部分マッチに名前を付けるのを後回しにして、 \\[Cc]\[([0-9]+),([0-9]+),([0-9]+)\] だとマッチしますね。

horino
質問者

お礼

>(?<名前>  ) は、.NET独自の表現 アッ、そうだったんですか!! C#以外は、まともにいじったことがなかったので知りませんでした。 ありがとうございます。 >サイト名からして、JavaScriptの正規表現では そうでしたね(笑 サイト名を見ていませんでした。 回答ありがとうございました。

その他の回答 (1)

  • koko_u_u
  • ベストアンサー率18% (216/1139)
回答No.1

名前つきキャプチャがなぜ $0 とかになっているか不明ですが >マッチしないことは、​http://jsregex.com/​を使って調べました。 そのサイトが(?<name>ほげ)の書式をサポートしていないだけでは? .net でプログラミングしているなら、.net でテストプログラムを書くのが確実でしょう。

horino
質問者

お礼

>名前つきキャプチャがなぜ $0 とかになっているか不明 初めは、数字だけにしておいたのですが、とあるサイトで名前は先頭がが数字以外でなければならないとみたからです。 >(?<name>ほげ)の書式をサポートしていないだけでは? そうかもしれません。詳しくはよくわかりませんが。 回答ありがとうございました。 追伸:次点を差し上げたかったのですが、チェックを入れるのを忘れてしまいました。すみません。

関連するQ&A