2

私はJavaで正規表現を持っています

^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!()*,/:;<>?\\\]\[\-_`{}~@#$%^&+=]).*$

これは、次の条件を持つ文字列に一致します。

  • 少なくとも8文字
  • 少なくとも1桁
  • 少なくとも1つの小さな文字
  • 少なくとも1つの大文字
  • 少なくとも1つの特殊文字

    [!()*,/:;<>?\\\]\[\-_`{}~@#$%^&+=]
    

どうすればJavaScript正規表現に変換できますか?

4

3 に答える 3

3

その周りに2つのスラッシュを置きます。

var re = /<your_regex_here>/;
于 2012-05-29T13:23:22.970 に答える
3

単純な正規表現を使用した単純なソリューション。

var re = /^(.{0,7}|\D+|[^a-z]+|[^A-Z]+|[^\^!@#$%&\*])$/;
if (!re.test(str)) {
    alert('Matched');
}

私の正規表現にはいくつかの特殊文字が欠落していることに注意してください。

于 2012-05-29T16:20:10.237 に答える
2

すでにJavaScriptで動作します:

var re = /^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!()*,/:;<>?\\\]\[\-_`{}~@#$%^&+=]).*$/;
re.test('abcdefgh0A$') // true
于 2012-05-29T13:23:04.303 に答える