Java'da Regex Boşluğu Nasıl Kullanılır

Java Da Regex Boslugu Nasil Kullanilir



Normal İfade veya Normal İfade, dizelerdeki karakterleri aramak için bir kalıp oluşturmak üzere bir araya gelen bir dizi özel karakterdir. Bilgisayar programlama ve yazılım mühendisliğinde, normal ifadeyi öğrenmek herhangi bir metinde bilgi bulmakta çok yardımcı olacaktır. Normal ifadeler kullanılarak her türlü metin arama, biçimlendirme ve metin değiştirme işlemleri yapılabilir.

Bu eğitim, Java'da normal ifade boşluklarını kullanma konusunda size rehberlik edecektir.







Java'da Regex nedir?

Normal İfade veya Normal İfade, tek bir karakter veya karmaşık bir kalıp kadar basit olabilir. Belirli bir sırada bir metin ve sembol dizisi ile oluşturulabilir. Normal ifadedeki karakterlerin çoğu harfler ve tipografik sembollerdir. Regex büyük/küçük harf duyarlıdır, bu yüzden onu oluştururken ve kullanırken bunu aklınızda bulundurun.



Java'da Regex Boşluğu Nasıl Kullanılır?

Java'nın önceden tanımlanmış herhangi bir Normal İfade sınıfı olmamasına rağmen. Ancak, “'yi içe aktararak normal ifadeleri kullanabiliriz. java.util.regex ' kütüphane. “ gibi bazı sınıfları içerir. Model ”, bir normal ifade kalıbı tanımlamak için kullanılır ve “ Maçlar ” kalıbı ile arama yapmak için kullanılan sınıf.



Java'da normal ifade boşluklarını kullanmanın iki yöntemi vardır:





    • Pattern.matches() yöntemini kullanma (önceden tanımlanmış normal ifadeyi kullanın)
    • Pattern ve Matcher sınıfını kullanma (eşleştirmek için kullanıcı tanımlı regex oluşturun)

Bu yöntemlerin Java'da boşluk için normal ifadeyle nasıl çalışacağını görelim.

Yöntem 1: Java'da Pattern.matches() Yöntemi ile Önceden Tanımlanmış Normal İfade Boşluk Alanını Kullanın

Bir dizgedeki boşlukları bulmak için Java'da üç yaygın regex vardır:



    • \s : Tek bir beyaz alanı temsil eder.
    • \s+ : Birden çok beyaz boşluğu belirtir.
    • \u0020 : Bir metinde boşluk bulmak için normal ifade olarak kullanılan beyaz boşluğun Unicode'udur.

Bu regex'leri statik yöntemde kullanabiliriz “ maçlar() ” arasında” Model ' sınıf. Desen sınıfı “ java.util.regex 'paket. Aşağıda Pattern.matches() yönteminin sözdizimi verilmiştir:

Sözdizimi

Desen.eşleşmeler ( '\s' , ' ' ) ;


Belirtilen yöntem iki bağımsız değişken alır: normal ifade ve eşleşecek dize. İlk argüman '\s', beyaz boşluğun normal ifadesi veya normal ifadesidir ve ikinci argüman ” “ dizedeki boşluktur. Boole değeri olarak true veya false döndürür.

Örnek 1: “\s” WhiteSpace Normal İfadesini kullanın

Burada kullanacağız “ \s ” Pattern.matches() yönteminde normal ifade. İkinci argüman olarak yöntemde boşluksuz bir dize ileteceğiz. Yöntem, normal ifadeyi ve dizeyi kontrol edecek ve ardından “ içinde saklanacak bir boole değeri döndürecektir. kibrit ” değişken:

boole kibrit = Model.eşleşmeler ( '\s' , '' ) ;


“ kullanarak eşleşme değişkeninin değerini yazdırın. System.out.println() ' yöntem:

System.out.println ( 'Uzay var:' + maç ) ;



“ tarafından döndürülen değer Desen.eşleşmeler() 'yöntem' yanlış ” çünkü geçirilen dizede boşluk yok:


Şimdi boşlukları diğer normal ifadelerle eşleştirmek için başka örnekler göreceğiz.

Örnek 2: “\s+” WhiteSpace Normal İfadesini Kullanın

Bu örnekte, “ \s+ ” içindeki normal ifade” maçlar() ” birden fazla boşluk bulma yöntemi:

boole kibrit = Model.eşleşmeler ( '\s+' , ' ' ) ;


Yöntemden döndürülen sonucu depolayan eşleşme değişkeninin değerini yazdırın:

System.out.println ( 'Uzay var:' + maç ) ;



İkinci argüman boşluk içerdiğinden, sonuç değeri “ olarak görüntülenir. doğru ”:

Örnek 3: “\u0020” WhiteSpace Normal İfadesini Kullanın

Burada size Unicode'un Java'da normal ifade olarak nasıl kullanıldığını göstereceğiz. Belirtilen amaç için kullanacağız “ \u0020 ” beyaz boşluğun Unicode'u olarak regex:

boole kibrit = Model.eşleşmeler ( '\u0020' , ' ' ) ;


Döndürülen değeri yazdırın:

System.out.println ( 'Uzay var:' + maç ) ;



Pattern.matches() yöntemi, “ doğru ” beyaz boşluklar içeren geçirilen bir dize olarak:


Java'da regex kullanmak için diğer yönteme geçelim.

Yöntem 2: Kullanıcı tanımlı Regex Boşluk Alanını Model ve Eşleştirici sınıfıyla kullanın

Model ” sınıfı bir desen tanımlamak veya oluşturmak için kullanılırken, “ Maçlar ” sınıfı verilen kalıba göre arama yapmak için kullanılır. Bir regex için kalıp, “ yardımı ile oluşturulabilir. derleme() ' Pattern sınıfının yöntemi. Herhangi bir amaç için derlemek istediğiniz desen olan yalnızca bir parametre alır.

Sözdizimi

Model.derleme ( ' \t \p{Zs}' ) ;


bu Maçlar sınıf, “ kullanarak desenle eşleşir. maçlar() ' yöntem. bir 'alır sicim 'desen olarak.

Sözdizimi

desenDeğişken.eşleştirici ( sicim ) ;


Yukarıda tartıştığımız boşluklar için önceden tanımlanmış bazı normal ifadeler vardır, geri kalanlar aşağıda listelenmiştir:

    • \\t\\p{Zs}
    • \\p{Zs}

Şimdi, bazı örneklere bakalım.

Örnek 1: “\\t\\p{Zs}” WhiteSpace Normal İfadesini kullanın

Bu örnekte, boşlukların sayısını sayarak bulacağız. İlk önce bir String oluşturacağız” s ” ve konsolda yazdırın:

dize = 'Hoş GeldinizLinuxİpucu' ;
System.out.println ( s ) ;


Ardından, bir kalıp tanımlayacağız “ \\t\\p{Zs} ” Java'da bir boşluk normal ifadesi görevi görür ve “ \s ”. Verilen kalıbı derledikten sonra, değişken “ regexDesen ” sonuç değeri içerecektir:

Kalıp regexPattern = Pattern.compile ( '\ \t \\p{Zs}' ) ;


Ara ' maçlar() 'yöntem ve geçiş' s ' Sicim:

Eşleştirici stringSpaces = regexPattern.matcher ( s ) ;


Bir tamsayı türü değişken oluşturun ' saymak ” ve “değeri ile başlatın” 0 ”:

int sayısı = 0 ;


Bir “kullanarak dizede bulunan boşlukların sayısını sayın. süre ' döngü. Döngü, Dize'yi çaprazlayacak ve herhangi bir boşlukla karşılaşırsa sayım değişkeni değerini artıracaktır:

süre ( stringSpaces.find ( ) ) {
say++;
}


Son olarak, bir dizede kaç boşluk bulunduğunu göstermek için count değerini yazdırın:

System.out.println ( 'Dize içerir' +say+ 'boşluklar' ) ;


Çıktı



Örnek 2: “\p{Zs}” WhiteSpace Normal İfadesini Kullanın

Şimdi başka bir kalıp kullanarak string içindeki boşlukları bulacağız. \p{Zs} ”. Bu desen, “ \s ' ve ' \s+ normal ifade:

Kalıp regexPattern = Pattern.compile ( '\\p{Zs}' ) ;


Şimdi diyoruz ki “ maçlar() 'yöntem ve geçiş' s ” Argüman olarak dize:

Eşleştirici stringSpaces = regexPattern.matcher ( s ) ;


Yukarıdaki örnekte olduğu gibi, “ süre Bir dizedeki boşlukları saymak ve yazdırmak için ” döngüsü:



Verilen çıktı, String'imizin “ Linux İpucu'na hoş geldiniz ” üç boşluk içerir:



Java'da regex boşluklarını kullanmanıza yardımcı olabilecek en kolay yöntemleri derliyoruz.

Çözüm

Boşluk için ' gibi birçok düzenli ifade vardır. \s ”, “ \s+ ”, “ \u0020 ”, “ \\t\\p{Zs} ', ve ' \\p{Zs} ”. Bu normal ifadeler, Pattern sınıfınınmatch() yönteminde veya Pattern Class ile bir model tanımlanarak ve Matcher sınıfı kullanılarak eşleştirilerek kullanılır. En sık kullanılan normal ifade boşlukları \s ve \s+'dır. Bu eğitimde, Java'da normal ifade boşluklarını kullanmanın tüm yöntemlerini ele aldık.