我正在写一个脚本来检查字母表中是否出现了美国运通信用卡号码。
我的代码如下所示:
let amexRegex= /^3[47][0-9]{13}$/;
if(text.search(amexRegex) != -1){
console.log('Found!');
} else {
console.log('Not found!');
}
当我将text
设置为'378734493671000'
(有效的美国运通信用卡号码)时,脚本会打印出Found!
,但如果我保留相同的文字并在其周围添加一些文字,就像这个:'378734493671000 ABCDEFG'
,打印出Not found!
。
为了找到匹配正则表达式的子字符串,我应该更改什么? 我不需要匹配正则表达式的子字符串索引,只需要true \ false。
答案 0 :(得分:2)
^
和$
分别限制匹配字符串的开头和结尾。删除它们可能就足够了。
答案 1 :(得分:2)
您只需要删除分别匹配统计信息和行尾的^
和$
:
let amexRegex= /3[47][0-9]{13}/;
答案 2 :(得分:1)
let amexRegex = /3[47][0-9]{13}/
if(amenxRegex.test(text) {
console.log('Found!')
} else {
console.log('Not found!')
}
答案 3 :(得分:1)