[JAVA] Maskieren Sie die durch Trennzeichen getrennte Benutzer-ID / das Kennwort mit einem kanonischen Ausdruck

/ Maskieren Sie durch Trennzeichen getrennte Passwörter. Aber ich möchte die / getrennten Daten behalten.

FindUserPassword.java


package playground;

public class FindUserPassword {

    public static void main(String[] args) {
        String str6 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest kf010 kfu0100.sh 10 1 249810";
        String str5 = "D:\\ap\\cp\\0100.bat  -id:249810 11 kf010 kfu0100.sh 10 1 249810";
        String str4 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest/ kf010 kfu0100.sh 10 1 249810";
        String str3 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest kf010 kfu0100.sh 10 1 249810";
        String str2 = "D:\\ap\\cp\\01.bat  -id:248669 1 20 12010033/19870420yt 0 tr010_bat -u cp 248669";
        String str = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 kf010 kfu0100.sh 10 1 249810";

        System.out.println("str2: " + str2);
        
        String[] commands = str2.split(" ");
        StringBuffer out = new StringBuffer();
        for (String command : commands) {
            //if ((command.indexOf("/") != command.lastIndexOf("/")) || (command.indexOf("/") < 0)) {
            if (command.matches("\\d{4}/\\d{2}/\\d{2}") || (command.indexOf("/") < 0)) {
                out.append(command).append(" ");
            } else {
                //out.append(command.replaceAll("/.+?", "/**********")).append(" ");

                int start = command.indexOf("/");
                String replacestr = command.substring(start+1);
                //out.append(command.replace(replacestr, "**********")).append(" ");
                out.append(command.replace(replacestr, "/**********")).append(" ");
            }
        }
        System.out.println(out);
    }

}

Unten, während des Versuchs und Irrtums (ich möchte etwas gegen str6 tun)

FindUserPassword_renew.java


package playground;
public class FindUserPassword {
        String str6 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest kf010 kfu0100.sh 10 1 249810";
        String str5 = "D:\\ap\\cp\\0100.bat  -id:249810 11 kf010 kfu0100.sh 10 1 249810";
        String str4 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest/ kf010 kfu0100.sh 10 1 249810";
        String str3 = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 guest/guest kf010 kfu0100.sh 10 1 249810";
        String str2 = "D:\\ap\\cp\\01.bat  -id:248669 1 20 12010033/19870420yt 0 tr010_bat -u cp 248669";
        String str = "D:\\ap\\cp\\0100.bat  -id:249810 11 2019/05/24 kf010 kfu0100.sh 10 1 249810";

    public static void main(String[] args) {
        
        String[] commands = {str, str2, str3, str4, str5, str6}; 
        for (String command : commands) {
          if (!command.matches(".+\\d{4}/\\d{2}/\\d{2}.+")) {
            System.out.println(command.replaceAll("/.+? ", "/********** "));
          } else {
              System.out.println(command);
          }
        }

Recommended Posts

Maskieren Sie die durch Trennzeichen getrennte Benutzer-ID / das Kennwort mit einem kanonischen Ausdruck
Regulärer Ausdruck für Passwort
[Ruby] Regulärer Ausdruck für die Einstellung sicherer Kennwortrichtlinien
Anders als bei JSON
Grundlagen regulärer Ausdrücke
JS regulärer Ausdruck
Ruby regulärer Ausdruck
Maskieren Sie die durch Trennzeichen getrennte Benutzer-ID / das Kennwort mit einem kanonischen Ausdruck
Importieren Sie JSON mit SolrJ
Validierung von JSON mit JSON-Schema
Behandeln Sie JSON mit minimal-json
^, $ im regulären Ausdruck von Rails
Unicode-Beispiel für reguläre Ausdrücke
Regulärer Ausdruck für Passwort
Formatieren Sie JSON mit org.json
Zusammenfassung der regulären Ausdrücke von Java
Extrahieren Sie eine Zeichenkette, die mit einem Großbuchstaben (Ruby) in Großbuchstaben beginnt.
Grundlagen regulärer Ausdrücke
JS regulärer Ausdruck
Ruby regulärer Ausdruck