js的正则表达式要求必须字母与数字组合至少有一个大写字母,要怎么写
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js的正则表达式要求必须字母与数字组合至少有一个大写字母,要怎么写相关的知识,希望对你有一定的参考价值。
必须要有字母和数字,且至少有一个大写字母的js正则表达式如下
/^(?=.*?[A-Za-z]+)(?=.*?[0-9]+)(?=.*?[A-Z]).*$/
我给你个javascript程序的例子,你看看吧.
<script type=text/javascript>var str='123Aabc';
var regex=/^(?=.*?[A-Za-z]+)(?=.*?[0-9]+)(?=.*?[A-Z]).*$/
var a=regex.test(str);
alert(a);
</script>
运行结果
true
js正则表达式的问题:要求一个字符串只能包含数字、大小写字母、“-”和“;”,而且结尾必须是“;”
按照你的要求,js正则表达式为 /^[0-9A-Za-z\\-;]+\\;$/g
我给你个结尾不是分号的javascript程序的例子,你看看吧
<html><head>
<script type=text/javascript>
var str='12345Aa-67890Bb;a';
var regex=/^[0-9A-Za-z\\-;]+\\;$/g
var a=regex.test(str);
alert(a);
</script>
</head>
<body>
</body>
</html>
运行结果
false
谢谢你。其实还要再加两个条件,你可以再看一下吗?
一,“-”和“;”不能在开头;
二,两个“-”或两个“;”不能连在一起,“-”和“;”也不能挨在一起。
按照你的要求,js正则表达式为 /^[^\\-;]((?!(\\-\\-)|(\\;\\;)|(\\-\\;)|(\\;\\-))[0-9A-Za-z\\-;])+\\;$/g
完整的javascript程序如下
<html><head>
<script type=text/javascript>
var str='12345Aa--67890Bb;';
var regex=/^[^\\-;]((?!(\\-\\-)|(\\;\\;)|(\\-\\;)|(\\;\\-))[0-9A-Za-z\\-;])+\\;$/g
var a=regex.test(str);
alert(a);
</script>
</head>
<body>
</body>
</html>
运行结果
false 因为有双减号
谢谢
参考技术A Matcher m=Pattern.compile("[A-Za-z0-9\-]*").matcher(text);允许空字符串就最后用*.不允许就+
以上是关于js的正则表达式要求必须字母与数字组合至少有一个大写字母,要怎么写的主要内容,如果未能解决你的问题,请参考以下文章
求一个正则表达式,要求 数字,大写字母,小写字母,特殊字符 至少两种或两种以上组合的正则表达式。