質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Q&A

解決済

1回答

2369閲覧

C# 正規表現

_TAKU_now_

総合スコア12

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

0グッド

0クリップ

投稿2016/08/05 05:41

編集2016/08/05 08:08

C# 正規表現

正規表現で書き方がわかりません、どのように記述すれば良いのでしょうか?

1.[文字列1]がローマ数字[ⅠⅩ]+'_'+数字12桁(半/全)+')'(半/全)である場合、
例)Ⅲ_1)

2.[文字列1]がアルファベット大文字1文字+数字1~2桁(半/全)である場合、
例)A1

3.[文字列1]アルファベット大文字+'-'+数字12桁+'-'+数字12桁(いずれも半/全)である場合
例)A-1-2

単に「半角数字12桁」や「ローマ数字」であれば下の文で可能ですが、、、
// 数字1
2桁
Regex regNo01 = new Regex( @"^([0-90-9]{1,2})$" );
// ローマ数字
Regex regNo02 = new Regex( @"^([ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ]{1,1})$" );

具体的に、実際の記述を教えて頂けると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

『単に「半角数字1~2桁」や「ローマ数字」』の後に続けてください。
ただし、$は行末を意味するので注意してください。

ヒント 単に 「a」 なら
new Regex( @"^a$" );
abなら
new Regex( @"^ab$" );

aをだけグループ化しておきたいケースでは

new Regex( @"^(a)$" );
abなら
new Regex( @"^(a)b$" );

このaとbが複雑になるだけです。

後続処理を予想するとこっちがいいのかな
new Regex( @"^(ab)$" );


追記 半角カッコ 文字について

半角のカッコ文字に関しては、正規表現で特別な意味を持ちますので、エスケープが必要です。
( ) は、 それぞれ \(, \) と書く必要があります。 ( \ 自体を書きたい場合は \\ です )

その他にも特別な意味を持つ記号がありますが、それは調べてみてください。

投稿2016/08/05 05:56

編集2016/08/05 07:05
flied_onion

総合スコア2604

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

_TAKU_now_

2016/08/05 06:13

早急なご回答ありがとうございます。 1 Regex regNo01 = new Regex( @"^([ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ]{1,1}_[0-90-9]{1,2})$" ); 2 Regex regNo01 = new Regex( @"^([A-Z]+[0-90-9]{1,2})$" ); 3 Regex regNo01 = new Regex( @"^([A-Z]+-[0-90-9]{1,2}[0-90-9]{1,2})$" ); ということでしょうか?
flied_onion

2016/08/05 07:00

実行結果はご自分で試してください。回答で言っていたことはそういうことです。
flied_onion

2016/08/05 07:01

あ、カッコは半角カッコ文字自体が欲しいんですね。その場合はそれぞれ \( \) としてください。これは回答に追記します。
_TAKU_now_

2016/08/05 07:41

もし可能であれば、それぞれ実際の記述を教えて頂けないでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問