使用 IF 运算符区分给定数组中字母数字和非字母数字元素的操作
Use IF operator to diverge actions on alphanumeric and non-alphanumeric elements in a given array
我需要帮助处理可以同时包含字母数字和非字母数字元素的数组。
我需要对字母数字执行一个操作,对非字母数字执行另一个操作。
我一直在尝试不同的方式来声明语句 If 来区分这两个选项,但我没有想出正确的公式。
我能得到的最接近的解决方案太脏了,我只是告诉程序该元素必须不同于“”并且不同于“!”不同于“?”。不是一个干净的解决方案。有人可以帮忙吗?也许使用 RegEx 表达式?
var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
var i=0;
while(i<myArray.length){
if(myArray[i]!=" " && myArray[i]!="!"&& myArray[i]!="?"&& myArray[i]!="."){
//PERFORM ACTION 1 Example:
return: "Hello";
}
else{
//PERFORM ACTION 2 Example:
return: "Goodbye";
}
i++;
}
我已经尝试使用以下正则表达式,但没有成功:
if(myArray[i]!=[A-Za-z0-9_])
还有:
if(myArray[i]!=/\W/g)
None 他们工作 :( 请帮忙。
谢谢。
解决方案:
var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
var i=0;
var alphaChecker = new RegExp("^[a-zA-Z0-9_]*$");
while(i<myArray.length){
if(alphaChecker.test(myArray[i])){
//PERFORM ACTION 1 Example:
myArray[i]= "Hello";
}
else{
//PERFORM ACTION 2 Example:
myArray[i]= "Goodbye";
}
i++;
}
return myArray;
这个效果很好。
我需要帮助处理可以同时包含字母数字和非字母数字元素的数组。
我需要对字母数字执行一个操作,对非字母数字执行另一个操作。
我一直在尝试不同的方式来声明语句 If 来区分这两个选项,但我没有想出正确的公式。
我能得到的最接近的解决方案太脏了,我只是告诉程序该元素必须不同于“”并且不同于“!”不同于“?”。不是一个干净的解决方案。有人可以帮忙吗?也许使用 RegEx 表达式?
var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
var i=0;
while(i<myArray.length){
if(myArray[i]!=" " && myArray[i]!="!"&& myArray[i]!="?"&& myArray[i]!="."){
//PERFORM ACTION 1 Example:
return: "Hello";
}
else{
//PERFORM ACTION 2 Example:
return: "Goodbye";
}
i++;
}
我已经尝试使用以下正则表达式,但没有成功:
if(myArray[i]!=[A-Za-z0-9_])
还有:
if(myArray[i]!=/\W/g)
None 他们工作 :( 请帮忙。
谢谢。
解决方案:
var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
var i=0;
var alphaChecker = new RegExp("^[a-zA-Z0-9_]*$");
while(i<myArray.length){
if(alphaChecker.test(myArray[i])){
//PERFORM ACTION 1 Example:
myArray[i]= "Hello";
}
else{
//PERFORM ACTION 2 Example:
myArray[i]= "Goodbye";
}
i++;
}
return myArray;
这个效果很好。