文字列が整数であり、「1」と「1.0」の両方を考慮しているかどうかをどのように確認しますか?
質問する
469 次
2 に答える
1
私は最初に考えvalidates_numericality_of :your_attribute_here, :only_integer => true
ましたが、小数点以下の桁数は許可されていません。
使用できます
validates_format_of :your_attribute, :with => /\A\d+(\.0+)?\Z/
\A
とここに注意して\Z
ください。andを使用する^
と$
、行にのみ一致し、。のような値が許可されます"1.0\nBLAAAAH"
。
于 2012-08-17T20:47:19.090 に答える
0
正規表現を使用すると、次のようなものを使用できます。
/^\d+(\.0*)?$/
これにより、1桁以上のシーケンスがチェックされ、その後にオプションでa.
と0個以上の末尾が続きます0
。
于 2012-08-17T20:29:04.413 に答える