logo

Java'da String'den alt dize nasıl kaldırılır

Java, dizelerden alt dizeleri kaldırmak için çeşitli yöntemler sağlar.

1) Değiştirme yöntemini kullanma

Bu yöntem Java String sınıfına aittir ve aynı yöntemin iki farklı uygulamasını sağlamak için aşırı yüklenmiştir.

İlk yaklaşımda, önceki her karakterin yerini alacak şekilde bir dizeye yeni bir karakter eklenir.

Bu şekilde, tüm eski karakterler güncellendikten sonra yeni karakterler içeren dize döndürülür.

Sözdizimi:

 string.replace(char oldChar, char newChar) 

Yeni karakter dizede bulunamazsa prosedür bu dizeyi döndürür.

Örnek:

 public class RemoveSubString { public static void main(String[] args) { String para = 'JavatPoint is for learning purpose'; String replace = para.replace('e', 'o'); System.out.println(replace); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

2) Karakter Sırasını Kullanmak

İkinci teknik, yalnızca bir karakter koleksiyonu olan CharSequence'ın yerine istenen karakter dizisini koyar.

Sözdizimi:

Java'da listede sıralama
 string.replace(char oldChar, char newChar) 

Bu işlem ve birincisi yalnızca bir karakter dizisinin yerine geçmesi bakımından farklılık gösterir.

Örnek:

 public class RemoveSubString { public static void main(String[] arg){ String para = 'John like to learn programming'; String replace = para.replace('learn', 'teach'); System.out.println(replace); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

3) Alt Dizeyi boş bir dizeyle değiştirin

Java, String'den silmek istediğiniz bir alt dizeyi boş bir String ile kolayca değiştirmenize olanak tanır.

Sözdizimi:

 string.replace(char oldChar, empty char) 

Örnek:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String para = 'John like to learn code'; String replace = para.replace('to learn', ''); System.out.println(replace); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

4) String'in replacementFirst yöntemini kullanma

Bu yöntem, normal ifadeyle eşleşen bir dize arar ve eğer bulunursa, onu verilen dizeyle değiştirir.

java liste yöntemleri

Perde arkasında bu işlev, metni düzenli bir ifade kullanarak ayıklar. derleme() Ve maçlar() Pattern sınıfının yöntemleri.

Sözdizimi:

 string.replaceFirst(No. of digit, new digit) 

Bir dizeden bir sayı çıkarmak ve onu dize olarak başka bir sayıyla değiştirmek için normal bir ifade oluşturulacaktır.

dosya java'da açıldı

Not: Dizenin yalnızca ilk iki rakamı bu sayıyla değiştirilecektir; kalan rakamlar değişmeden kalacaktır.

Örnek:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String para = 'John is 101 years old, and Mary is 20 years old'; String replaceFirst = para.replaceFirst('\d\d\d', '20'); System.out.println(replaceFirst); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

5) changeFirst() yöntemi

ilk değiştir() yöntemi, bir String'den bir alt dizeyi silmek için boş bir String ile kullanılabilir.

Sözdizimi:

 string.replace(No. of digit, empty char) 

Örnek:

 package org.arpit.java2blog.entry; public class RemoveSubStringFromString{ public static void main(String[] arg) { String para = ' John is 101 years old, and Mary is 20 years old '; String parafirstreplace = para.replaceFirst('\d\d', ''); System.out.println(parafirstreplace); }} 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

6) replacementAll yöntemini kullanma

hepsini değiştir yönteminin aksine ilk önce değiştir , dizenin her örneğini değiştirmek için normal bir ifade kullanır.

Benzer ilk önce değiştir , bu yöntem, normal ifadeyi kullanarak bir dizeyi ayıklar. derleme() Ve maçlar() yöntemler. Aynı zamanda bir üretir ModelSözdizimiİstisna normal ifade yanlışsa.

Sözdizimi:

 String replaceAll(No. of digit, int new number) 

Bir dizeden tüm sayıları alan ve her örnek için sayıların yerine geçen bir düzenli ifade kullanacağız.

D : Bu normal ifade, 0 ile 9 arasındaki herhangi bir rakamı tanır.

Örnek:

 public class RemoveSubStringFromString { public static void main(String[] arg) { String para = ' John is 10 years old, and Mary is 20 years old '; String parareplace = para.replaceAll('\d\d', '30'); System.out.println(parareplace); }} 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

7) replacementAll() yöntemi

changeAll() yöntemiyle, bir dizeden bir alt dizeyi kaldırmak için boş bir String kullanabilirsiniz.

Sözdizimi:

 string.replace(No. of digit, empty char) 

Örnek:

 package org.arpit.java2blog; public class RemoveSubStringFromString { public static void main(String[] arg) { String replaceAll = ' John is 10 years old, and Mary is 20 years old '; String replaceAllNumbers = replaceAll.replaceAll('\d\d', ''); System.out.println(replaceAllNumbers); } } 

Çıktı:

dizi listesini sırala
Java'da String'den alt dize nasıl kaldırılır

8) String Builder'ın delete() yöntemini kullanma

Bir dizeye karakter eklemek ve çıkarmak için, StringBuilder değiştirilebilir bir karakter dizisi tutar.

Boş alan tarafından 16 karakterlik başlangıç ​​kapasitesine sahip bir dize oluşturucu oluşturulur. StringBuilder işlev Nesne() {[yerel kod] }, ve eğer dahili arabellek taşarsa, daha büyük bir dize oluşturucu otomatik olarak oluşturulur.

Dizeden silinecek alt dizenin başlangıcı ve bitişi, dizenin birinci ve ikinci int parametreleri olarak belirtilir. silmek() işlev.

Son indeks ikinci parametreden bir çıkardığı için dışlayıcıdır ancak başlangıç ​​indeksi kapsayıcıdır.

Sözdizimi:

 public StringBuilder delete(int start,int end) 

Başlangıç ​​negatif olduğunda, dizenin uzunluğundan daha büyük veya dizenin sonundan daha büyük olduğunda, StringIndexOutOfBoundsException Atıldı. Başlangıç ​​ve bitiş eşit olduğunda herhangi bir ayarlama yapılmaz.

Örnek:

 public class main{ public static void main(String[] args){ StringBuilder stringBuilder = new StringBuilder('Java is language or programming language'); StringBuilder builder = stringBuilder.delete(7, 19); System.out.println(builder.toString()); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

9) StringBuilder change() Yöntemini Kullanmak

Aralarındaki tek fark yer değiştirmek() işlevi ve silmek() yöntem, dizeden kaldırılan karakterleri değiştirmek için kullanılan üçüncü parametredir.

dünyanın en iyi arabaları

Değiştirilmesi gereken büyük bir ip varsa, ipin uzunluğuna uyacak şekilde boyut artırılacaktır.

Sözdizimi:

 string.replace(int start, int end, char newChar) 

İşlev toString() Bu yöntem bir değer döndürdükten sonra güncellenen dizeyi yazdırmak için { [yerel kod] }() işlevi kullanılabilir StringBuilder .

Örnek:

 public class main{ public static void main(String[] args){ StringBuilder stringBuilder = new StringBuilder('Java is Code'); StringBuilder builder = stringBuilder.replace(8, 12, 'Programming language'); System.out.println(builder.toString()); } } 

Çıktı:

Java'da String'den alt dize nasıl kaldırılır

Çözüm

Bu makalede, bir dizeden bir alt dizeyi kaldırmak için karakterleri nasıl değiştireceğinizi ve sileceğinizi öğrendiniz. Sunulan teknikler arasında StringBuilder delete() ve replacement() yöntemlerinin yanı sıra string replacement(), replacementFirst() ve replacementAll() işlevlerinin kullanımı yer almaktadır.