16

asp:TextBox'1000'、'1000,0'、'1000,00' などの金額を保持する必要があります (ロシアの標準のため、カンマが区切り文字です) 。

適切に何ValidationExpressionを使用する必要がありasp:RegularExpressionValidatorますか?

試してみ\d+\,\d{0,2}ましたが、「1000」など、10 進数のない数字は許可されません。

4

4 に答える 4

31
\d+(,\d{1,2})?

10進数がある場合にのみコンマを許可し、コンマをまったく許可しません。疑問符は と同じ意味な{0,1}ので、 の後には\d+インスタンスがゼロ (つまり何もない) または 1 つのインスタンスがあります。

,\d{1,2}

Helen が正しく指摘しているように、次のように非キャプチャ グループを使用するだけで十分です。

\d+(?:,\d{1,2})?

追加の?:意味は、括弧は,\d{1,2}疑問符で使用する部分をグループ化するためだけのものであり、これらの括弧内で何が一致したかを覚えておく必要がないことを意味します。これは正規表現エンジンの作業が減ることを意味するため、パフォーマンスが向上します。

于 2009-06-22T16:39:01.820 に答える
3

http://regexlib.com/Search.aspx?k=money

于 2009-06-22T16:40:12.473 に答える