非常谢谢0009的回复,我试了一下,你那样是对的,但我又碰到一个问题,
var expinteger = new RegExp("/^(<|>|<>)?-?\d+(\.\d+)?$/");
var str="<-12.5";
var str1=">-12.5";
var str2="<12.5";
var str3=">12.5";
var str4="<>12.5";
var str5="<>-12.5";
var str6=">12";
var str7="<>12";
var str8="<12";
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str1))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str2))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str3))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str4))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str5))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str6))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str7))
alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str8))
alert(expinteger.test(str))
alert(expinteger.test(str1))
alert(expinteger.test(str2))
alert(expinteger.test(str3))
为什么我用expinteger.test(str) 就返回为false呢?alert(/^(<|>|<>)?-?\d+(\.\d+)?$/.test(str))就返回为真