Java正則表達(dá)式簡介
Java提供了包,用于與正則表達(dá)式進(jìn)行模式匹配。Java正則表達(dá)式與Perl編程語言非常相似,很容易學(xué)習(xí)。正則表達(dá)式是一種特殊的字符序列,用于幫助您匹配或查找其他字符串或字符串集,方法是使用在模式中保
Java提供了包,用于與正則表達(dá)式進(jìn)行模式匹配。Java正則表達(dá)式與Perl編程語言非常相似,很容易學(xué)習(xí)。正則表達(dá)式是一種特殊的字符序列,用于幫助您匹配或查找其他字符串或字符串集,方法是使用在模式中保存的專用語法。它們可用于搜索、編輯或操作文本和數(shù)據(jù)。包主要由以下三類組成:Pattern Class、Matcher Class和PatternSyntaxException。
正則表達(dá)式的基本使用
下面是幾個(gè)正則表達(dá)式的基本用法示例:
```java
String str "待驗(yàn)證文本";
String regular "這里是正則表達(dá)式";
if ((regular).matcher(str).matches()) {
("符合條件");
} else {
("不符合條件");
}
```
上述代碼演示了如何使用正則表達(dá)式驗(yàn)證一個(gè)字符串是否符合某個(gè)模式。如果符合條件,則輸出"符合條件";如果不符合條件,則輸出"不符合條件"。
正則表達(dá)式常用模式
下面是一些常用的正則表達(dá)式模式:
- `.`:匹配除換行符以外的所有字符
- `x?`:匹配0次或一次x字符
- `x*`:匹配0次或多次x字符
- `x `:匹配1次或多次x字符
- `.*`:匹配0次或一次的任何字符
- `. `:匹配1次或多次的任何字符
- `{m}`:匹配剛好是m個(gè)的指定字符串
- `{m,n}`:匹配在m個(gè)以上n個(gè)以下的指定字符串
- `{m,}`:匹配m個(gè)以上的指定字符串
- `[]`:匹配符合[]內(nèi)的字符
- `[^]`:匹配不符合[]內(nèi)的字符
- `[0-9]`:匹配所有數(shù)字字符
- `[a-z]`:匹配所有小寫字母字符
- `[^0-9]`:匹配所有非數(shù)字字符
- `[^a-z]`:匹配所有非小寫字母字符
- `^`:匹配字符開頭的字符
- `$`:匹配字符結(jié)尾的字符
- `d`:匹配一個(gè)數(shù)字字符,和[0-9]語法一樣
- `d `:匹配多個(gè)數(shù)字字符串,和[0-9] 語法一樣
- `D`:非數(shù)字,其他同d
- `w`:英文字母或數(shù)字的字符串,和[a-zA-Z0-9]語法一樣
- `W`:非英文字母或數(shù)字的字符串,和[^a-zA-Z0-9]語法一樣
推薦的正則表達(dá)式軟件
推薦使用一些軟件進(jìn)行正則表達(dá)式的檢測(cè)和調(diào)試,比如網(wǎng)站regexr。這些工具可以幫助您更方便地編寫和測(cè)試正則表達(dá)式。
Java常用正則表達(dá)式示例
以下是幾個(gè)Java常用的正則表達(dá)式示例:
- 驗(yàn)證漢字:`^[u4e00-u9fa5]{0,}$`
- 驗(yàn)證郵箱:
```java
public static void main(String[] args) {
// 要驗(yàn)證的字符串
String str "service@";
// 郵箱驗(yàn)證規(guī)則
String regEx "[a-zA-Z_]{1,}[0-9]{0,}@[([a-zA-Z0-9]-*){1,3}] .[a-zA-Z]{1,}";
// 編譯正則表達(dá)式
Pattern pattern (regEx);
Matcher matcher (str);
// 字符串是否與正則表達(dá)式相匹配
boolean rs ();
(rs);
}
```
以上代碼演示了如何使用正則表達(dá)式驗(yàn)證一個(gè)郵箱地址是否合法。如果合法,則輸出true;否則輸出false。