Java 中的正規表示式空格
Rupam Yadav
2022年4月27日
正規表示式或 regex 是特殊字元的組合,可建立可用於搜尋字串中某些字元的搜尋模式。在下面的示例中,我們將看到如何使用各種正規表示式字元來查詢字串中的空格。
在 Java 中使用正規表示式查詢空格
要使用正規表示式搜尋模式並檢視給定的字串是否與正規表示式匹配,我們使用類 Pattern
的靜態方法 matches()
。matches()
方法有兩個引數:第一個是正規表示式,第二個是我們要匹配的字串。
查詢空格最常見的正規表示式字元是\s
和\s+
。這些正規表示式字元之間的區別在於,\s
表示單個空格字元,而\s+
表示字串中的多個空格。
在下面的程式中,我們使用 Pattern.matches()
來檢查使用正規表示式 \s+
的空格,然後是具有三個空格的字串。然後,我們列印輸出 true
的 whitespaceMatcher1
,這意味著模式匹配並找到空格。
在 whitespaceMatcher2
中,我們使用字元\s
來識別單個空格,它對字串" "
返回 true。請注意,正規表示式區分大小寫,並且\S
與\s
不同。
接下來,我們使用正規表示式 [\\t\\p{Zs}]
,它等效於\s
,併為單個空格返回 true。
\u0020
是一個表示空格的 Unicode 字元,當傳遞帶有單個空格的字串時返回 true。
最後一個正規表示式 \p{Zs}
也是一個標識空白的空白分隔符。
import java.util.regex.Pattern;
public class RegWhiteSpace {
public static void main(String[] args) {
boolean whitespaceMatcher1 = Pattern.matches("\\s+", " ");
boolean whitespaceMatcher2 = Pattern.matches("\\s", " ");
boolean whitespaceMatcher3 = Pattern.matches("[\\t\\p{Zs}]", " ");
boolean whitespaceMatcher4 = Pattern.matches("\\u0020", " ");
boolean whitespaceMatcher5 = Pattern.matches("\\p{Zs}", " ");
System.out.println("\\s+ ----------> " + whitespaceMatcher1);
System.out.println("\\s -----------> " + whitespaceMatcher2);
System.out.println("[\\t\\p{Zs}] --> " + whitespaceMatcher3);
System.out.println("\\u0020 ------->" + whitespaceMatcher4);
System.out.println("\\p{Zs} ------->" + whitespaceMatcher5);
}
}
輸出:
\s+ ----------> true
\s -----------> true
[\t\p{Zs}] --> true
\u0020 ------->true
\p{Zs} ------->true
Author: Rupam Yadav
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn