[英]Regular expression javascript to check comma separted numbers
有人可以帮我写一个正则表达式与测试功能一起使用,以在字符串列表或具有逗号分隔数字的数字上找到准确接收的数字。
对于前。 我有像参数一样的数字125和像'12,74,48,125,1253,1'这样的字符串,或者如果更容易使用数字12,74,48,125,1253,1的列表(我可以同时使用)我该如何写正则表达式查找确切的数字并返回true或false。
我用了这个,但是找不到数字是否有3位或4位数字
if(new RegExp('\\b'+number+'\\b').test('12,74,48,125,1253,1')){
alert('true');
}
这个列表也只能是一个数字,例如“ 125”,我很少使用正则表达式。 提前致谢。
如果更容易使用数字列表12,74,48,125,1253,1
不要使用正则表达式。 只要检查一下数字是否在数组中即可。
var nums = [12,74,48,125,1253,1];
if (nums.indexOf(125) >= 0) {
alert('true');
}
如果必须使用正则表达式,只需对字符串使用search
或match
即可,例如
var indexOfMatch = '12,74,48,125,1253,1'.search(/125/) // -1 if not present
要么
var arrayOfMatches = '12,74,48,125,1253,1'.match(/125/) //returns an array of matches
然后,您可以仅对返回的索引(如果其不为-1)或返回的数组(如果其长度> 0)进行测试,以确定是否存在125。
我建议使用数组indexOf方法来解决您的问题。
var list = '12,74,48,125,1253,1';
function isset(num) {
return list.split(',').indexOf(""+num) === -1 ? false : true;
}
为什么需要成为正则表达式? 如果要查找确切的数字,请使用indexOf:
var str = '12,74,48,125,1253,1';
var ix = str.indexOf('125');
if(ix == -1) /* number not found */;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.