Cách sử dụng Khoảng trắng Regex trong Java

Cach Su Dung Khoang Trang Regex Trong Java



Regex hoặc Biểu thức chính quy là một tập hợp các ký tự đặc biệt kết hợp với nhau để tạo thành một mẫu để tìm kiếm các ký tự trong chuỗi. Trong lập trình máy tính và kỹ thuật phần mềm, học regex sẽ rất hữu ích trong việc tìm kiếm thông tin trong bất kỳ văn bản nào. Tất cả các loại hoạt động tìm kiếm văn bản, định dạng và thay thế văn bản có thể được thực hiện bằng cách sử dụng biểu thức chính quy.

Hướng dẫn này sẽ hướng dẫn bạn cách sử dụng khoảng trắng regex trong Java.







Regex trong Java là gì?

Biểu thức chính quy hoặc Regex có thể đơn giản như một ký tự đơn hoặc một mẫu phức tạp. Nó có thể được tạo bằng một chuỗi văn bản và ký hiệu theo một thứ tự cụ thể. Hầu hết các ký tự trong regex là các chữ cái và các ký hiệu kiểu chữ. Regex phân biệt chữ hoa chữ thường, vì vậy hãy ghi nhớ điều đó khi tạo và sử dụng nó.



Làm thế nào để sử dụng Khoảng trắng Regex trong Java?

Mặc dù Java không có bất kỳ lớp Biểu thức chính quy nào được xác định trước. Tuy nhiên, chúng tôi có thể sử dụng cụm từ thông dụng bằng cách nhập “ java.util.regex ' thư viện. Nó bao gồm một số lớp như “ Họa tiết ', Được sử dụng để xác định một mẫu regex và' Diêm ”Lớp được sử dụng để tìm kiếm với mẫu.



Có hai phương pháp để sử dụng khoảng trắng regex trong Java như sau:





    • Sử dụng phương thức Pattern.matches () (sử dụng regex được xác định trước)
    • Sử dụng lớp Mẫu và Đối sánh (tạo regex do người dùng xác định để đối sánh)

Hãy xem các phương pháp này sẽ hoạt động như thế nào với regex cho khoảng trắng trong Java.

Phương pháp 1: Sử dụng Khoảng trắng Regex được xác định trước với Phương thức Pattern.matches () trong Java

Để tìm khoảng trắng trong một chuỗi, có ba biểu tượng regex phổ biến trong Java:



    • \S : Nó đại diện cho một khoảng trắng duy nhất.
    • \ s + : Nó chỉ ra nhiều khoảng trắng.
    • \ u0020 : Nó là Unicode của khoảng trắng được sử dụng làm regex để tìm khoảng trắng trong văn bản.

Chúng ta có thể sử dụng các regex này trong phương thức tĩnh “ diêm() ' sau đó ' Họa tiết ' lớp. Lớp mẫu thuộc về “ java.util.regex ' bưu kiện. Dưới đây là cú pháp của phương thức Pattern.matches () được đưa ra:

Cú pháp

Pattern.matches ( '\S' , '' ) ;


Phương thức được chỉ định nhận hai đối số: biểu thức chính quy và chuỗi để so khớp. Đối số đầu tiên “\ s” là biểu thức chính quy hoặc regex của khoảng trắng và đối số thứ hai '' là không gian trong chuỗi. Nó trả về true hoặc false dưới dạng giá trị boolean.

Ví dụ 1: Sử dụng “\ s” WhiteSpace Regex

Ở đây, chúng tôi sẽ sử dụng “ \S ”Regex trong phương thức Pattern.matches (). Chúng tôi sẽ chuyển một chuỗi không có khoảng trắng trong phương thức làm đối số thứ hai. Phương thức sẽ kiểm tra regex và chuỗi, sau đó trả về giá trị boolean sẽ được lưu trữ trong “ cuộc thi đấu ' Biến đổi:

boolean cuộc thi đấu = Pattern.matches ( '\S' , '' ) ;


In giá trị của biến đối sánh bằng cách sử dụng “ System.out.println () ' phương pháp:

System.out.println ( 'Không gian tồn tại:' + trận đấu ) ;



Giá trị được trả về bởi “ Pattern.matches () 'Phương pháp là' sai ”Bởi vì chuỗi được truyền không có khoảng trắng:


Bây giờ chúng ta sẽ xem một số ví dụ khác để khớp khoảng trắng với các regex khác.

Ví dụ 2: Sử dụng “\ s +” WhiteSpace Regex

Trong ví dụ này, chúng tôi sẽ chuyển “ \ s + 'Regex trong' diêm() ”Để tìm nhiều khoảng trắng:

boolean cuộc thi đấu = Pattern.matches ( '\ s +' , '' ) ;


In giá trị của biến đối sánh lưu trữ kết quả trả về từ phương thức:

System.out.println ( 'Không gian tồn tại:' + trận đấu ) ;



Vì đối số thứ hai chứa khoảng trắng, giá trị kết quả được hiển thị là “ thật ”:

Ví dụ 3: Sử dụng “\ u0020” WhiteSpace Regex

Ở đây, chúng tôi sẽ chỉ cho bạn cách Unicode được sử dụng như một regex trong Java. Đối với mục đích cụ thể, chúng tôi sẽ sử dụng “ \ u0020 ”Regex dưới dạng Unicode của khoảng trắng:

boolean cuộc thi đấu = Pattern.matches ( '\ u0020' , '' ) ;


In giá trị trả về:

System.out.println ( 'Không gian tồn tại:' + trận đấu ) ;



Phương thức Pattern.matches () sẽ in “ thật ”Dưới dạng một chuỗi được truyền có chứa khoảng trắng:


Hãy chuyển sang phương pháp khác để sử dụng regex trong Java.

Phương pháp 2: Sử dụng Khoảng trắng Regex do Người dùng xác định với lớp Mẫu và Đối sánh

Các ' Họa tiết Lớp 'được sử dụng để xác định hoặc tạo một mẫu, trong khi' Diêm ”Lớp được sử dụng để tìm kiếm theo mẫu đã cho. Mẫu cho một regex có thể được tạo ra với sự trợ giúp của “ biên dịch () ”Của lớp Pattern. Nó chỉ cần một tham số, mẫu mà bạn muốn biên dịch cho bất kỳ mục đích nào.

Cú pháp

Pattern.compile ( ' \ t \ p {Zs} ' ) ;


Các Diêm lớp phù hợp với mẫu bằng cách sử dụng “ diêm() ' phương pháp. Nó cần một “ sợi dây ”Như mẫu.

Cú pháp

patternVariable.matcher ( sợi dây ) ;


Có một số regex được xác định trước cho khoảng trắng mà chúng ta đã thảo luận ở trên, số còn lại được liệt kê bên dưới:

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

Bây giờ, hãy xem một số ví dụ.

Ví dụ 1: Sử dụng “\\ t \\ p {Zs}” WhiteSpace Regex

Trong ví dụ này, chúng ta sẽ tìm ra số lượng khoảng trắng bằng cách đếm chúng. Đầu tiên, chúng tôi sẽ tạo một chuỗi “ S ”Và in nó ra trên bảng điều khiển:

Chuỗi s = 'WelcometoLinuxHint' ;
System.out.println ( S ) ;


Tiếp theo, chúng tôi sẽ xác định một mẫu “ \\ t \\ p {Zs} 'Hoạt động như một regex khoảng trắng trong Java và bằng' \S ”. Sau khi biên dịch mẫu đã cho, biến “ regexPattern ”Sẽ chứa giá trị kết quả:

Mẫu regexPattern = Pattern.compile ( '\ \ t \\ p {Zs} ' ) ;


Gọi ' diêm() 'Phương pháp và vượt qua' S ' Sợi dây:

Matcher stringSpaces = regexPattern.matcher ( S ) ;


Tạo một biến kiểu số nguyên “ đếm 'Và khởi tạo nó với giá trị' 0 ”:

số int = 0 ;


Đếm số khoảng trắng tồn tại trong chuỗi bằng cách sử dụng “ trong khi ' vòng. Vòng lặp sẽ duyệt qua Chuỗi và tăng giá trị của biến đếm nếu nó gặp bất kỳ khoảng trắng nào:

trong khi ( stringSpaces.find ( ) ) {
tính ++;
}


Cuối cùng, in giá trị của số đếm để hiển thị có bao nhiêu khoảng trắng được tìm thấy trong một chuỗi:

System.out.println ( 'Chuỗi chứa' + đếm + 'dấu cách' ) ;


Đầu ra



Ví dụ 2: Sử dụng “\ p {Zs}” WhiteSpace Regex

Bây giờ, chúng ta sẽ tìm các khoảng trắng trong chuỗi bằng cách sử dụng một mẫu khác “ \ p {Zs} ”. Mô hình này hoạt động tương tự như “ \S ' và ' \ s + ”Regex:

Mẫu regexPattern = Pattern.compile ( '\\ p {Zs}' ) ;


Bây giờ, chúng tôi gọi là “ diêm() 'Phương pháp và vượt qua' S ”Chuỗi làm đối số:

Matcher stringSpaces = regexPattern.matcher ( S ) ;


Như trong ví dụ trên, chúng tôi cũng sử dụng “ trong khi ”Vòng lặp để đếm khoảng trắng trong một chuỗi và in chúng:



Đầu ra đã cho chỉ ra rằng Chuỗi của chúng tôi “ Chào mừng bạn đến với Linux Hint ”Chứa ba khoảng trắng:



Chúng tôi biên dịch tất cả các phương pháp đơn giản nhất có thể giúp bạn sử dụng khoảng trắng regex trong Java.

Sự kết luận

Có nhiều biểu thức chính quy cho khoảng trắng, chẳng hạn như “ \S ',' \ s + ',' \ u0020 ',' \\ t \\ p {Zs} ', và ' \\ p {Zs} ”. Các regex này được sử dụng trong phương thức match () của lớp Pattern hoặc bằng cách xác định một mẫu với Lớp Pattern và đối sánh nó bằng cách sử dụng lớp Matcher. Khoảng trắng regex thường được sử dụng nhất là \ s và \ s +. Trong hướng dẫn này, chúng tôi đã trình bày tất cả các phương pháp để sử dụng khoảng trắng regex trong Java.