Javascript 要检查前两个字符的正则表达式必须为;1(努马里语)——“;用9个字母表示的单词应该是字母

Javascript 要检查前两个字符的正则表达式必须为;1(努马里语)——“;用9个字母表示的单词应该是字母,javascript,regex,Javascript,Regex,我试着以这样的方式编码,代码不起作用 var redEx = /^1-[0-9a-zA-Z]{7}/; document.getElementById("rowidOpty").value.test(redEx) 示例:“1-5S6AW2R”:字符串中的第一个字母应为数字和 第二个字符必须是“-”并保持字母数字。它是regexObj.test(string)而不是string.test(regexObj) 有关更多信息,请参阅 console.log(/^1-[0-9a-zA-Z]{7}/

我试着以这样的方式编码,代码不起作用

var redEx = /^1-[0-9a-zA-Z]{7}/;

document.getElementById("rowidOpty").value.test(redEx)
示例:“1-5S6AW2R”:字符串中的第一个字母应为数字和 第二个字符必须是“-”并保持字母数字。

它是
regexObj.test(string)
而不是
string.test(regexObj)

有关更多信息,请参阅

console.log(/^1-[0-9a-zA-Z]{7}/.test('1-5S6AW2R'))
pattern=/^[0-9]-(\w+)/g;

console.log('1-5S6AW2R'.match(pattern))
您的函数语法错误:

regexp.test([str])
正确的答案是:

var regEx=/^1-[0-9a-zA-Z]{7}/;
变量字符串='1-5S6AW2R';

log(regEx.test(string))如果要验证输入是否与一个数字、一个破折号和7个字母数字完全匹配,请使用以下命令:

/^[0-9]-[a-zA-Z-0-9]{7}$/;
或者如果第一个只能是数字1:

/^1-[a-zA-Z-0-9]{7}$/;
如果要在包含大量文本的字符串中搜索此模式的所有匹配项:

/(^|\s)[0-9]-[a-zA-Z-0-9]{7}(\s|$)/g;
var-restrictivePattern=/^[0-9]-[a-zA-Z-0-9]{7}$/;
var loosePattern=/(^ | \s)[0-9]-[a-zA-Z-0-9]{7}(\s |$)/g;
var str='1-A78Z2TE';
var longtr='我们有两个不同的代码1-AYRJ3F4和4-23RJ3F4';
log(“验证字符串以匹配模式:”,str.match(restrictivePattern))

console.log(“字符串中的多个匹配项:”,longStr.match(loosePattern))
Add
$
anchor
/^1-[0-9a-zA-Z]{7}$/
和语法错误
regex.test(value)
什么不起作用,您得到意外结果的输入是什么?在这种情况下:document.getElementById(“rowidOpty”).value.match(redEx)开头必须是1还是任何数字?任何数字值
{1}
都是usless;-)<代码>\w
匹配
[a-zA-Z0-9\]
,因此它与
[a-zA-Z0-9]
不同。在本例中:document.getElementById(“rowidOpty”).value.match(redEx)