English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 루프 제어

Java 배열

Java 오브젝트 오리엔티드(I)

Java 오브젝트 오리엔티드(II)

Java 오브젝트 오리엔티드(III)

Java 예외 처리

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java String replace() 使用方法及示例

Java String(문자열) 메서드

Java String replace()方法用 新的字符/文本 替换 字符串中每个匹配的旧字符/文本。

replace()方法的语法是

string.replace(char oldChar, char newChar)

string.replace(CharSequence oldText, CharSequence newText)

replace()参数

要替换单个字符,replace()方法采用以下两个参数:

  • oldChar - 字符串中要替换的字符

  • newChar - 匹配的字符被替换为该字符

要替换子字符串,replace()方法采用以下两个参数:

  • oldText - 字符串中要替换的子字符串

  • newText - 匹配的子字符串被替换为该字符串

replace()返回值

  • replace()方法返回一个新字符串,其中每次出现的匹配字符/文本都将替换为新字符/文本。

示例1:Java 字符串 replace()字符替换

class Main {
    public static void main(String[] args) {
        String str1 = "abc cba";
        //所有出现的“ a”都替换为“ z”
        System.out.println(str1.replace('a', 'z')); // zbc cbz
        //所有出现的“ L”都替换为“ J”
        System.out.println("Lava".replace('L', 'J')); // Java
        //字符不在字符串中
        System.out.println("Hello".replace('4', 'J')); // Hello
    }
}

주의:如果要替换的字符不在字符串中,则replace()返回原始字符串。

示例2:Java 字符串 replace() 子字符串替换

class Main {
    public static void main(String[] args) {
        String str1 = "C++ Programming";
        //所有出现的“c++”都被替换为“Java”
        System.out.println(str1.replace("C", "++", "Java"); // Java Programming
        //모든 "a"가 "zz"로 대체됩니다
        System.out.println("aa bb aa zz".replace("aa", "zz")); // zz bb aa zz
        // 서브 문자열이 문자열에 없습니다
        System.out.println("Java".replace("C"++", "C"); // Java
    }
}

주의:대체할 서브 문자열이 문자열에 없다면 replace()는 원래 문자열을 반환합니다.

주의할 점은 replace() 메서드가 전체 문자열에서从头부터의 서브 문자열을 대체한다는 것입니다. 예를 들어,

"zzz".replace("zz", "x") // xz

위 코드의 출력은 xz입니다. zx 대신 x가 첫 번째 zz를 대체했습니다.

정규 표현식을 기반으로 하여 문자열을 대체하려면 사용하세요Java String replaceAll() 메서드

Java String(문자열) 메서드