我在C#中使用它
var validString = new Regex(@"^[a-z][a-z\d!@#$%\^&*()\-+]{0,7}$(?<=\d\D+)", RegexOptions.Compiled);
我正在尝试强制执行以下密码创建规则
•Not have upper-case letters. •Begin with a letter. •Have at least 1 digit(s) not at the beginning and end. •Have up to 8 alphanumeric •Does NOT have any symbols like @#$ characters (symbols like !@#$%^&*()-+).
任何帮助将不胜感激
答案 0 :(得分:2)
可以使用相同的正则表达式(只要它有效)。至于如何使用它如下所示:
var re = /^[a-z][a-z\d!@#$%\^&*()\-+]{0,7}$(?<=\d\D+)/;
var test = re.test(password); // will store a bool value whether the password is valid or not.
答案 1 :(得分:2)
Google是您的朋友:http://www.diveintojavascript.com/articles/javascript-regular-expressions
此外,您可以使用match
:
str.match(pattern)
享受。
答案 2 :(得分:2)
几乎相同,除了:
new RegExp
代替new Regex
@
或者使用正则表达式文字:
var validString = /^[a-z](?=[a-z]*[0-9])[a-z0-9]{0,6}[a-z]$/;
注意我改变了你的正则表达式,因为你基本上说你不能在开头或结尾有数字。我用了一个预测来确保那里有一个数字。