java正則表達式字母
❶ java中非中文的正則表達式是什麼
非中文 [^\u4e00-\u9fa5]
中文的正則表達式是[\u4e00-\u9fa5]
其他正則表達式
字元類
[abc] a、b 或 c(簡單類)
[^abc] 任何字元,除了 a、b 或 c(否定)
[a-zA-Z] a 到 z 或 A 到 Z,兩頭的字母包括在內(范圍)
[a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](並集)
[a-z&&[def]] d、e 或 f(交集)
[a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](減去)
[a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](減去)
以上在java中使用時用雙引號將它們括起來就可以了
預定義字元類
. 任何字元(與行結束符可能匹配也可能不匹配)
\d 數字:[0-9] (單個數字)
\D 非數字: [^0-9]
\s 空白字元:[ \t\n\x0B\f\r]
\S 非空白字元:[^\s]
\w 單詞字元:[a-zA-Z_0-9]
\W 非單詞字元:[^\w]
以上在java中使用時除了將它們用雙引號括起來以為,還須加\轉義,例如\d的實際用法是」\\d「
POSIX 字元類(僅 US-ASCII)
\p{Lower} 小寫字母字元:[a-z]
\p{Upper} 大寫字母字元:[A-Z]
\p{ASCII} 所有 ASCII:[\x00-\x7F]
\p{Alpha} 字母字元:[\p{Lower}\p{Upper}]
\p{Digit} 十進制數字:[0-9]
\p{Alnum} 字母數字字元:[\p{Alpha}\p{Digit}]
\p{Punct} 標點符號:!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
\p{Graph} 可見字元:[\p{Alnum}\p{Punct}]
\p{Print} 可列印字元:[\p{Graph}\x20]
\p{Blank} 空格或製表符:[ \t]
\p{Cntrl} 控制字元:[\x00-\x1F\x7F]
\p{XDigit} 十六進制數字:[0-9a-fA-F]
\p{Space} 空白字元:[ \t\n\x0B\f\r]
以上字元串要加雙引號和反斜杠號Greedy 數量詞
X? X,一次或一次也沒有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超過 m 次
用法也是將它們用雙引號括起來
Logical 運算符
XY X 後跟 Y
X|Y X 或 Y
(X) X,作為捕獲組
用法也是將它們用雙引號括起來
注意:正則表達式則有在方法參數明確是以正則表達式為參考時才使用,否則如果方法參數是普通字元序列時是不起作用的。
(引自網路和書籍)
❷ java正則表達式 ^/.*\\.do$ 和 ^/.*\\.[-\\w]+$ 各表示匹配什麼東西呀
^/.*\\.do$ 表示匹配一個以「/」開頭,「do」結尾,中間必須出現一個「\」,而開頭的"/"和中間的「\」中間可以有任意的字元0個或者多個,且中間的「\」和結尾的「do」之間必須要以個字元
❸ java 正則表達式 前4位必須全部是字母,怎麼寫
[a-zA-Z]{4}[^ ,.]+
解釋:
[a-zA-Z]{4} 匹配4位字母
[^ ]+匹配後面不能含有空格、逗號、句號,確保它是一個單詞
❹ java 正則表達式 包含字母數字特殊字元
/(?!d{3}|[a-z]{3})([0-9a-z])(?!11)[0-9a-z]*/gi
我不明白你的第一條的意思
我只能不匹配 1. 3個連續字母或3個連續數字(4個連續也不能匹配)
2. 3個連續相同的字母或數字(其實1已經否定了2)
/***/gi gi是全局不區分大小寫匹配 ***是正則表達式
希望我這樣寫你能從中得到啟發