如何在Java中去除字串中的所有非字母字元?


String類的**split()**方法接收一個表示分隔符的字串值,並將字串分割成標記(單詞)陣列,將兩個分隔符之間的字串作為一個標記。

例如,如果將單個空格“ ”作為分隔符傳遞給此方法並嘗試分割一個字串。此方法將兩個空格之間的單詞視為一個標記,並返回當前字串中單詞(空格之間)的陣列。

如果字串不包含指定的分隔符,則此方法返回一個包含整個字串作為元素的陣列。

正則表示式“\W+”匹配字串中所有非字母字元(標點符號、空格、下劃線和特殊符號)。

因此,要從字串中刪除所有非字母字元 -

  • 獲取字串。

  • 使用String類的**split()**方法將獲得的字串分割成字串陣列,並將上面指定的正則表示式作為引數傳遞給它。

  • 這將在每個非字母字元處分割字串,並將所有標記作為字串陣列返回。

  • 將獲得的陣列中的所有元素連線成一個字串。

示例

 現場演示

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);
   }
}

輸出

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

更新於: 2019年10月14日

2K+ 瀏覽量

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告