Computer >> Máy Tính >  >> Lập trình >> Java

Xóa tất cả các ký tự không phải chữ cái của một Chuỗi trong Java?

split () phương thức của lớp String chấp nhận giá trị Chuỗi đại diện cho dấu phân cách và chia thành mảng mã thông báo (từ), coi chuỗi giữa sự xuất hiện của hai dấu phân cách là một mã thông báo.

Ví dụ:nếu bạn chuyển một khoảng trắng “” làm dấu phân cách cho phương thức này và cố gắng tách một chuỗi. Phương thức này coi từ nằm giữa hai khoảng trắng là một mã thông báo và trả về một mảng từ (giữa các khoảng trắng) trong Chuỗi hiện tại.

Nếu Chuỗi không chứa dấu phân cách đã chỉ định, phương thức này trả về một mảng chứa toàn bộ chuỗi dưới dạng phần tử.

Biểu thức chính quy “\\ W +” khớp với tất cả các ký tự không phải trong bảng chữ cái (dấu câu, dấu cách, dấu gạch dưới và ký hiệu đặc biệt) trong một chuỗi.

Do đó, để xóa tất cả các ký tự không phải chữ cái khỏi một Chuỗi -

  • Lấy chuỗi.

  • Tách chuỗi int thu được thành một mảng Chuỗi bằng cách sử dụng split () phương thức của lớp String bằng cách chuyển biểu thức chính quy được chỉ định ở trên làm tham số cho nó.

  • Thao tác này sẽ chia chuỗi ở mọi ký tự không phải chữ cái và trả về tất cả các mã thông báo dưới dạng một mảng chuỗi.

  • Nối tất cả các phần tử trong mảng thu được dưới dạng một chuỗi duy nhất.

Ví dụ

import java.util.Scanner;
public class RemovingAlphabet {
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter your name: ");
      String str = sc.nextLine();
      String[] stringArray = str.split("\\W+");
      String result = new String();
      for(int i = 0; i < stringArray.length;i++){
         result = result+ stringArray[i];
      }
      System.out.println("Result: "+result);
   }
}

Đầu ra

Enter your name:
Krishna ^% Kasyap*@#
Result: KrishnaKasyap