2012-03-04 6 views
1

私はwebappで正規表現を使用する必要があります。これはチェコ語の文字(ěščřžýáíóóúůďťňíƒóóóóóóóóółółóyóÉ)を許可します。現在私は正規表現でチェコ語を使用する

[a-zA-Z]*\w{1,20} 

ですが、これは入力できません。おかげ

+0

そして、正規表現で文字そのものを入れては動作しませんか? –

+0

あなたが[a-zA-Zěščř] * \ w {1,20}を意味するなら、それは動作しません – polohy

+0

チェコ語の文字に限定する必要がありますか他の言語の手紙ですか? – svick

答えて

4
var words = Regex.Matches(inputstr, @"[ěščřžýáíéóúůďťňĎŇŤŠČŘŽÝÁÍÉÚŮa-zA-z]{1,20}") 
       .Cast<Match>() 
       .ToArray(); 
+0

ok、どのようにaspxファイルで設定するのですか? (私もクライアント側のバリデーションを行っています) – polohy

+1

質問は、aspxではなくreqular expressionに関するものでした。あなたの '[a-zA-Z] * \ w {1,20}'を –

+0

の文字列で置き換えてみてください。私は@部分だけを取り除く必要がありました – polohy

1

代替ソリューション(のみ.NETの作品):

[\p{Ll}\p{Lu}]{1,20} 
+0

これはどのようなエンコーディングですか?なぜそれは.NETでしか機能しませんか? –

+0

@Dan [unicode文字クラス](http://msdn.microsoft.com/en-us/)/library/20bw873z#CategoryOrBlock)は大文字と小文字の区別があり、純粋なJavaScriptでは動作しません。.NETコードビハインドロジックでのみ動作します。 –

関連する問題