首页 > 解决方案 > replaceAll 重复字符

问题描述

出于某种原因,我得到了这个输出

通行证:12345

端口:8080

饼干:未找到

主机:本地主机

密码:12345

当我想要

通行证:12345

端口:8080

饼干:未找到

主机:本地主机

密码:12345

  public static String modifyString(String str) {
    if (str.matches("(.*)=($)")){
        str = str.replace("=", " : not found");
    } else {
        str = str.replace("=", " : ");
    }
    return str;
}

            if (arr[i] != null){
            if (arr[i].contains("pass")) {
                arr[arr.length - 1] = arr[i];
                arr[arr.length -1] = arr[i].replaceAll("pass", "password");
                System.out.println(modifyString(arr[i]));

            } else {
                System.out.println(modifyString(arr[i]));
            }

标签: javaregex

解决方案


您试图处理字符串“密码”。replaceAll(“pass”, “password”) 将“pass”替换为“password”并保留尾随的“word”。所以结果肯定是“密码”。


推荐阅读