замініть струну на іншу в java


97

Яка функція може замінити рядок іншою?

Приклад # 1: Що замінить "HelloBrother"з "Brother"?

Приклад # 2: Що замінить "JAVAISBEST"з "BEST"?


2
Так ти хочеш лише останнього слова?
SNR

Відповіді:


147

replaceМетод це те , що ви шукаєте.

Наприклад:

String replacedString = someString.replace("HelloBrother", "Brother");


10

Існує можливість не використовувати зайві змінні

String s = "HelloSuresh";
s = s.replace("Hello","");
System.out.println(s);

1
Це навряд чи нова відповідь, але вдосконалення відповіді @ DeadProgrammer.
Карл Ріхтер

Ця відповідь є, будь ласка, спробуйте з іншим підходом @oleg sh
Lova Chittumuri

7

Заміна однієї рядка іншою може бути виконана в наведених нижче методах

Спосіб 1: Використання рядкаreplaceAll

 String myInput = "HelloBrother";
 String myOutput = myInput.replaceAll("HelloBrother", "Brother"); // Replace hellobrother with brother
 ---OR---
 String myOutput = myInput.replaceAll("Hello", ""); // Replace hello with empty
 System.out.println("My Output is : " +myOutput);       

Спосіб 2 : ВикористанняPattern.compile

 import java.util.regex.Pattern;
 String myInput = "JAVAISBEST";
 String myOutputWithRegEX = Pattern.compile("JAVAISBEST").matcher(myInput).replaceAll("BEST");
 ---OR -----
 String myOutputWithRegEX = Pattern.compile("JAVAIS").matcher(myInput).replaceAll("");
 System.out.println("My Output is : " +myOutputWithRegEX);           

Спосіб 3 : Використання, Apache Commonsяк визначено у посиланні нижче:

http://commons.apache.org/proper/commons-lang/javadocs/api-z.1/org/apache/commons/lang3/StringUtils.html#replace(java.lang.String, java.lang.String, java.lang.String)

ДОВІДКА



0

Ще одна пропозиція, скажімо, у вас є два однакових слова в рядку

String s1 = "who is my brother, who is your brother"; // I don't mind the meaning of the sentence.

Функція заміни змінить кожну рядок, заданий у першому параметрі, на другий параметр

System.out.println(s1.replace("brother", "sister")); // who is my sister, who is your sister

і ви можете також використовувати метод substituAll для того ж результату

System.out.println(s1.replace("brother", "sister")); // who is my sister, who is your sister

якщо ви хочете змінити лише перший рядок, який розміщується раніше,

System.out.println(s1.replaceFirst("brother", "sister")); // whos is my sister, who is your brother.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.