我想使用JavaScript(我也可以使用jQuery)来做检查字符串是否匹配正则表达式^([a-z0-9]{5,})$,并得到一个真或假的结果。
Match()似乎是检查字符串的一部分是否匹配正则表达式,而不是整个正则表达式。它能解决问题吗?我能用它来解决问题吗?如何?
我想使用JavaScript(我也可以使用jQuery)来做检查字符串是否匹配正则表达式^([a-z0-9]{5,})$,并得到一个真或假的结果。
Match()似乎是检查字符串的一部分是否匹配正则表达式,而不是整个正则表达式。它能解决问题吗?我能用它来解决问题吗?如何?
当前回答
下面是一个寻找特定HTML标签的示例,因此/someregex/.test()返回一个布尔值:
if(/(span|h[0-6]|li|a)/i.test(“h3”)) alert('true');
如果您想测试整个字符串的精确匹配,请记住将^表示字符串的开始,将$表示字符串的结束。
例子:
/[a-z]+/.test('aaa111'); // true
/^[a-z]+$/.test('aaa111'); // false
其他回答
使用test()方法:
var term = "sample1";
var re = new RegExp("^([a-z0-9]{5,})$");
if (re.test(term)) {
console.log("Valid");
} else {
console.log("Invalid");
}
下面是一个寻找特定HTML标签的示例,因此/someregex/.test()返回一个布尔值:
if(/(span|h[0-6]|li|a)/i.test(“h3”)) alert('true');
如果您想测试整个字符串的精确匹配,请记住将^表示字符串的开始,将$表示字符串的结束。
例子:
/[a-z]+/.test('aaa111'); // true
/^[a-z]+$/.test('aaa111'); // false
如果你不希望^和$出现在正则表达式中(我有这样一个用例),你可以这样做
let reg = /[a-zA-Z0-9]+/g
let txt = "hello"
let matches = reg.exec(txt)[0] == txt
console.log(`It ${matches ? "does" : "doesn't"} match`)
你可以试试这个,对我很管用。
<input type="text" onchange="CheckValidAmount(this.value)" name="amount" required>
<script type="text/javascript">
function CheckValidAmount(amount) {
var a = /^(?:\d{1,3}(?:,\d{3})*|\d+)(?:\.\d+)?$/;
if(amount.match(a)){
alert("matches");
}else{
alert("does not match");
}
}
</script>
let str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; /[a-d]/gi; console.log (str.match(正则表达式);