0

これが Regex Edit Aloneで実現できるかどうかはわかりません。MVC ビューで 10 の倍数の整数フィールド値を検証する必要があります。これは、正規表現のみと目立たない検証で達成できますか?

4

3 に答える 3

8

次のようなパターンが機能するはずです。

^[0-9]*0$

もちろん、これで許可され0ます。入力が 10 以上であることを確認したい場合は、これを使用できます。

^[1-9][0-9]*0$

ただし、これは異なる数字システムで表現された数字を処理しません (たとえば、東アラビア数字では 10 であると私が信じている ۱۰ )。入力の値をテストするには、カスタム検証属性を作成することをお勧めします。簡単な実装は次のようになります。

public class MultipleOf10Attribute : ValidationAttribute
{
    public override bool IsValid(object value)
    {
        return ((int)value) % 10 == 0;
    }
}
于 2013-08-27T22:12:55.980 に答える
3

うーん。10 の倍数は 0 で終わるというのが私の理解です。常に。(少なくとも10進数で。)ではどうですか

^.*0$

または、それらがすべて10進数であることを確認したい場合:

^\d*0$

何かが欠けていない限り、簡単です。

コメントによると、一致する負の数:

^-?\d*0$

より一般化された(そしてまったく役に立たない)アプローチについては、以下を確認してください。

素数をチェックするクールな方法ですが、ここでも役に立ちません

于 2013-08-27T22:12:26.020 に答える