- - PR -
C#での正規表現
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-10-13 18:33
はじめまして
いつも勉強させて頂いております C#+ASP.NETの開発を行っております ASP.NETのテキストボックスで記述されている内容をボタンイベントで C#に処理を移してから、クラスで正規表現を行おうとしております こちらの正規表現でテキストボックス及びテキストエリア内に 全角カナのみ記入されているならばtrue、半角カナが混じっているならば falseという事を行おうと思い、下記を記入いたしました TxtFieldはテキストボックス(エリア)より渡されるstring型 Check = Regex.IsMatch(TxtField , @"[^ア-ン]*^[ア-ン]+$"); ↑ここは半角カナです ただ、上記ですと10文字以上の値が入った場合には対応出来ない (falseで帰ってくる)事が分かりました 正常に評価する為にはどのように記述すればよろしいでしょうか? また、漢字とひらがな及び記号を許可するものはどのように記述 すればよろしいのでしょうか? Check = Regex.IsMatch(TxtField , @"^[ あ-ん亜-熙]+$"); 上記だけですと、記号が許可されない事と、一部の漢字が (例えば許可という文字)使用出来ません ご教授の程、よろしくお願い致します [ メッセージ編集済み 編集者: blue-pearl 編集日時 2004-10-13 18:46 ] | ||||||||
|
投稿日時: 2004-10-13 19:24
blue-pearlさん、こんばんは。
で、それ以外が true という事ならば、
で良いんじゃないでしょうか。 | ||||||||
|
投稿日時: 2004-10-13 20:02
きくちゃん様
そうそうのご返答、誠にありがとうございます
ありがとうございます 出来ました ただ、教えていただきたいのですが、 「@".*」の部分は任意の文字を初めの0文字目からという意味ですよね? 「[ヲ-゚]」ここはどういうことなのでしょうか? ヲ-でここからという意味だと思いますが、こちらだけで半角カナのアからヲまで 「゚」は拒否するということなのでしょうか? 私が調べた中で上記の記述がありませんでしたので、教えて頂ければ幸いです また、調べていて痛感したのですが、良いサイトが見つかりませんでした 知ってらしたら教えて頂ければ幸いです よろしくお願い致します | ||||||||
|
投稿日時: 2004-10-13 23:16
いわゆる半角カナを文字コード順に並べると次のようになります。
。「」、・ヲァィゥェォャュョッーアイウエテンルレロワン゙゚ 我々の感覚とはずいぶん違いますね。 [ヲ-゚] というのは「文字コード」において ヲ から ゚ までという意味です。上の順番をみればなぜこのような(一見)おかしな範囲を指定しなければならないのかがおわかりでしょう。 とはいえ、[ヲ-゚] だと一部の記号が認められてしまいますので、正しくは次のようなコードになると思います。
[ メッセージ編集済み 編集者: IZUMI Yusuke 編集日時 2004-10-13 23:18 ] | ||||||||
|
投稿日時: 2004-10-14 06:41
IZUMI Yusukeさん、おはようございます。
フォローありがとうございます。 そうそう、記号は考慮してませんでした。 | ||||||||
|
投稿日時: 2004-10-14 14:39
IZUMI Yusuke様
きくちゃん様 こんにちは
上記のようになっていたのですね? とても複雑ですね 並び順が分からないととてもではありませんが使えませんね お忙しい中、ご回答頂きまして誠にありがとうございます とても勉強になりました もし、また不明な点がございました際には、お願いしたいと思います この度は誠にありがとうございました [ メッセージ編集済み 編集者: blue-pearl 編集日時 2004-10-14 14:41 ] |
1