文字列として表される数値から先行ゼロを取り除くことができる正規表現を作成するのに問題があります。申し訳ありませんが、小数点以下30桁以上の数値を扱うため、parseFloatは私が探しているものではありません。
私の現在の正規表現は
/(?!-)?(0+)/;
これが私のテストケースです。 http://jsfiddle.net/j9mxd/1/
$(function() {
var r = function(val){
var re = /(?!-)?(0+)/;
return val.toString().replace( re, '');
};
test("positive", function() {
equal( r("000.01"), "0.01" );
equal( r("00.1"), "0.1" );
equal( r("010.01"), "10.01" );
equal( r("0010"), "10" );
equal( r("0010.0"), "10.0" );
equal( r("10010.0"), "10010.0" );
});
test("negative", function() {
equal( r("-000.01"), "-0.01" );
equal( r("-00.1"), "-0.1" );
equal( r("-010.01"), "-10.01" );
equal( r("-0010"), "-10" );
equal( r("-0010.0"), "-10.0" );
equal( r("-10010.0"), "-10010.0" );
});
});
テストケースが合格しないのはなぜですか?