回答
使用indexOf。你可以检查它是否包含一个子字符串。如果没有找到,则返回-1
var str = "12,23,26,32"
return !(str.indexOf("23")!=-1 || str.indexOf("24")!=-1) // Dont have 23 or 24
======= =======编辑
像@马特在评论说,该解决方案还将致力于“12239, 26,32“,那不是重点。
使分割前检查的indexOf,那么你会得到逗号之间的元素。
var array = "12,23,26,32".split(",");
return !(array.indexOf("23")!=-1 || array.indexOf("24")!=-1) // Dont have 23 or 24
麻烦的是,如果输入的字符串是“12,239,26,32”,那将会匹配。我认为OP希望输入字符串的每个csv都是一个要测试的原子单元。 –
我明白了...你有一点。解决方案是在检查之前进行拆分,对吧?我编辑我的答案 –
var str = "12,23,26,32";
var obj = str.split(",");
var isFound = false;
for(i=0; i < obj.length; i++)
{
if(obj[i] == "23" || obj[i] == "24")
{
isFound = true;
break;
}
}
return isFound;
-1,应该始终指定上parseInt函数的基数。另外,为什么要转换为一个数字,然后比较它呢? –
+1,它更接近什么OP可能想比任何的indexOf或正则表达式的答案。 –
@EvanTrimboli,你能解释一下吗? ''应该总是在字符串上指定基数' – DON
if (/(?:^|,)(23|24)(?:,|$)/.test("12,23,26,32")) {
/* found 23 or 24 */
}
尝试此
var str = "12,23,26,32";
var isFound = (str.indexOf('23') || str.indexOf('24')) > -1;
麻烦的是,如果输入的字符串是“12,239,26,32”将匹配。我认为OP希望输入字符串的每个csv都是一个要测试的原子单元。 –
哦,是的,因为它不会工作。我猜我错了 –
!/(^|,)2[34](,|$)/.test(str);
,或者如果有可能是空白本
!/(^|,)\s*2[34]\s*(,|$)/.test(str);
正则表达式test
方法返回true
如果字符串参数的常规expressio匹配如果不是,则为false
。 !
颠倒了测试呼叫的结果。
^
是字符串开始的元字符,所以(^|,)
意味着'在字符串的开头'或'一个逗号字符'。
它不能被写入[^,]
因为这将意味着“一个字符不是一个逗号”,并且它不能被写入[,^]
为意思是“一个字符,该字符逗号或文字^
字符。
2[34]
意味着随后3或4
(,|$)
2是指一个逗号或字符串的末尾$
。
\s*
意味着零个或多个空格字符。
- 1. 查找字符串中的字符串
- 2. 查找字符串中的字符串
- 3. 查找字符串中的字符串
- 4. 查找字符串中的多个子字符串
- 5. 查找字符串切片串片
- 6. 查找多个字符串的字符串
- 7. bash:在多个其他字符串中查找字符串
- 8. 在字符串中查找字符串
- 9. 在字符串中查找字符串
- 10. 在另一个字符串中查找一个字符串的字符串
- 11. 如何在多个字符串中查找字符串中的某些字母?
- 12. 查找字符串中的字符
- 13. 查找多个字符串的Java ArrayList
- 14. 在字符串中查找多个不连续的字符
- 15. 在包含多个字符串的许多对象中查找子字符串
- 16. 在输入字符串中查找字符串中的子串
- 17. Mongodb - 如何在多个字段中查找字符串?
- 18. 查找分隔字符串中的第n个字符串
- 19. 在字符串中查找字符串的第一个实例
- 20. 查找字符串中的
- 21. 正则表达式查找字符串中的字符串中的字符串
- 22. 查询字符串到一个具有文本字段(多个字符串)的字符串的精确匹配
- 23. 查找多个字符串并用Postgres中的单个字符串替换
- 24. jQuery - 用html片段替换多个字符串中的多个字符
- 25. 找到另一个字符串内的多个字符串
- 26. 查找字符串中的所有3个字符长度的子字符串
- 27. 查找字符串中的可变长度字符串的多个实例
- 28. 在字符串中查找图片url
- 29. 使用-notcontains查找字符串内的字符串中的子字符串
- 30. 查找字符串中的3个字符中的1个
所有的答案,这一点是相当有限的,假设你只有永远需要检查的23或24.如果你需要它,你可能会得到一个更可重复使用/灵活的答案,如果你改一下这个问题:) –
请注意,Internet Explorer <9不支持数组上的“indexOf”。 – MikeM