Javascript正则表达式测试方法无法正常工作
可能重复:Javascript正则表达式测试方法无法正常工作,javascript,regex,Javascript,Regex,可能重复: 我使用以下方法传递这些参数: var stringValue = "50, abc"; var stringArray = stringValue.split(","); var agePattern = /^([0-9]|[1-9][0-9]|[1][0-4][0-9]|[1][5][0])$/g; age = getMatchingString(stringArray, agePattern); //-------------------------------------
我使用以下方法传递这些参数:
var stringValue = "50, abc";
var stringArray = stringValue.split(",");
var agePattern = /^([0-9]|[1-9][0-9]|[1][0-4][0-9]|[1][5][0])$/g;
age = getMatchingString(stringArray, agePattern);
//---------------------------------------------
function getMatchingString(stringArray, regexPattern) {
//alert("getMatchingString");
for (var i=0; i < stringArray.length; i++) {
if (regexPattern.test(stringArray[i])) {
return (stringArray[i].match(regexPattern)).toString();
}
}
return null;
}
var stringValue=“50,abc”;
var stringArray=stringValue.split(“,”);
var agePattern=/^([0-9]|[1-9][0-9]|[1][0-4][0-9]|[1][5][0])$/g;
年龄=getMatchingString(stringArray,agePattern);
//---------------------------------------------
函数getMatchingString(stringArray,RegExpatern){
//警报(“getMatchingString”);
对于(var i=0;i
Chrome显示了以下有趣的行为,其中使用stringArray[i]和stringArray[0]的测试方法显示了不同的值,即使
i=0
,如图所示:
有人能给我解释一下吗?var stringValue=“50,abc”;
var stringValue = "50, abc";
var stringArray = stringValue.split(",");
var age = getMatchingString(stringArray);
function getMatchingString(stringArray)
{
var len=stringArray.length;
for (var i=0; i < len; i++)
{
if(!isNaN(stringArray[i]))
{
return stringArray[i]
}
}
return null;
}
alert(age)//50
var stringArray=stringValue.split(“,”);
var age=getMatchingString(stringArray);
函数getMatchingString(stringArray)
{
var len=stringArray.length;
对于(变量i=0;i
也许,如果您在数组中循环以检查是否存在一个数字值,例如age,isNaN
是比使用正则表达式模式更好的选择