簡體   English   中英

Java字符串中的特殊字符

[英]Special characters in a java string

我正在嘗試編寫代碼以查找Java字符串中的特殊字符。

特殊字符是a-zA-Z。?@;'#〜!£$%^&*()_ +-=¬`,。/ <>

請幫助我理解和編寫如何實現此功能。

謝謝

您可以從字符串創建char數組。

String string = "test";
char[] charArray = string.toCharArray();

然后,您可以循環瀏覽所有字符:

for(char character: charArray){
    //check if the character is special and do something with it, like adding it to an List.
}

您可以使用掃描儀在字符串中查找無效字符:

/* Regex with all character considered non-special */
public static final String REGULAR_CHARACTERS = "0-9a-z";

public static String specialCharacters(String string) {
    Scanner scanner = new Scanner(string);
    String specialCharacters= scanner.findInLine("[^" + REGULAR_CHARACTERS  + "]+");
    scanner.close();
    return specialCharacters;
}

findInLine返回一個字符串,其中所有字符不包含在常量中(所有特殊字符)。 您需要使用您認為非特殊的所有字符來設置常數。

另外,如果您只想設置要查找的字符,則可以使用以下方法修改上面的示例:

public static final String SPECIAL_CHARACTERS = "a-zA-Z.?@;'#~!£$%^&*()_+-=¬`,./<>";
....
String specialCharacters= scanner.findInLine("[" + SPECIAL_CHARACTERS + "]+");
....

常量中使用的字符通常需要對正則表達式進行轉義。

例如,要添加]字符,您需要使用\\\\]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM