[JAVA] Regulärer Ausdruck für Passwort

So validieren Sie Passwörter mit kanonischen Ausdrücken! Ich habe einen ganzen Tag gebraucht, um das zu verstehen Als Referenz für ähnliche Personen. .. ..

Erforderliche Spezifikationen

^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!-/:-@[-`{-~])[!-~]{8,48}$

Java-Beispielcode

RegexPassword.java


package sample;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexPassword {
	public static void main(String[] args) {
		Pattern p = Pattern.compile("^$|^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!-/:-@\\[-`{-~])[!-~]*");
		Matcher m = p.matcher("aA1!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");
		Boolean result = m.matches();

		System.out.println("result:" + result);
	}
}

Referenz

Wenn Sie die Grundvoraussetzung regulärer Ausdrücke kennen Wenn Sie die Grundvoraussetzung für reguläre Ausdrücke 2 kennen

Einfach vorauszulesen und zurückzublicken

Leicht zu lesende ASCII-Zeichencodetabelle

Für diejenigen, die die Notwendigkeit von ". *" Von "(? =. * [A-z])" nicht verstehen.

Um reguläre Ausdrücke in Java zu verwenden

Verschiedene Notizen

Annahme

Sprache: Java8

Hauptthema

Über kanonische Ausdrücke für Passwörter Zuerst den positiven Ausblick verstehen Ich habe den folgenden Code geschrieben und ausgeführt, um die Operation zu überprüfen Ich war besorgt über falsch, wenn es wahr zurückgeben sollte.


package sample;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexWord {
	public static void main(String[] args) {
		Pattern p = Pattern.compile("^(?=.*[a-z])");
		Matcher m = p.matcher("abc");
		Boolean result = m.matches();

		System.out.println("result:" + result);
	}
}

Abschließend musste ich die Zeile "Pattern p = ~" wie folgt umschreiben: Pattern p = Pattern.compile("^(?=.*[a-z]).*");

Recommended Posts

Regulärer Ausdruck für Passwort
[Ruby] Regulärer Ausdruck für die Einstellung sicherer Kennwortrichtlinien
Grundlagen regulärer Ausdrücke
JS regulärer Ausdruck
Ruby regulärer Ausdruck
^, $ im regulären Ausdruck von Rails
Zusammenfassung der regulären Ausdrücke von Java
Maskieren Sie die durch Trennzeichen getrennte Benutzer-ID / das Kennwort mit einem kanonischen Ausdruck
Regelmäßiger Ausdruck für die Beurteilung der vollen Breite / halben Breite
Eine kleine Geschichte mit regulären Ausdrücken Teil 1
Eine kleine Geschichte über reguläre Ausdrücke Teil 2
Wenden Sie den Matching-Prozess für reguläre Ausdrücke mit JSON Sassert an