1. java正則表達式
1、Java 正則表達式:
正則表達式定義了字元串的模式。正則表達式可以用來搜索、編輯或處理文本。正則表達式並不僅限於某一種語言,但是在困桐每種語言中有細微的差別。
2、正則表達式實例
一個字元串其實就是一個簡單的正則表達式,例如 Hello World 正則表達式匹配 Hello World 字元串。.(點號)也是一個正則表達式,它匹配任何一個字元如:a 或 1。
3、java.util.regex 包主要包括以下三個類:
(1)Pattern 類:
pattern 對象是一個正則表達式的編譯表示。Pattern 類沒有公共構造方法。要創建一個 Pattern 對象,你必須首先調用其公共靜態編譯方法,它返回一個 Pattern 對象。該方法接受一個正則表達式作為它的第一個參數。
(2)Matcher 類頌汪:
Matcher 對象是對輸入字元串進行解釋和匹配操作的引擎。與Pattern 類一樣,Matcher 也沒有公野尺仔共構造方法。你需要調用 Pattern 對象的 matcher 方法來獲得一個 Matcher 對象。
(3)PatternSyntaxException:
PatternSyntaxException 是一個非強制異常類,它表示一個正則表達式模式中的語法錯誤。
2. 用JAVA語言編寫正則表達式匹配指定的漢字的方法
匹配中文字元的正則表達式: [\u4e00-\u9fa5] 匹配雙位元組字元(包括漢字在內):[^\x00-\xff] 匹配空行的正則表達式:\n[\s ]*\r 匹配HTML標記的正則表達式:/ <(.*) .* <\/\1 <(.*) \/ / 匹配首尾空格的正則表達式:(^\s*) (\s*$) 用正則表達式限制只能輸入中文:onkeyup= "value=value.replace(/[^\u4E00-\u9FA5]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^\u4E00-\u9FA5]/g, ' ')) " 用正則表達式限制只能輸入全形字元: onkeyup= "value=value.replace(/[^\uFF00-\uFFFF]/g, ' ') " onbeforepaste= "clipboardData.setData( 'text ',clipboardData.getData( 'text ').replace(/[^\uFF00-\uFFFF]/g, ' ')) "
3. JAVA正則表達式判斷 只能包含漢字、英文、「_」和數字 ,正則該怎麼寫呢
正則表達式:[\u4e00-\u9fa5]*|\w*|\d*|_*
代碼如下:
@Test
public void test1(){
//匹配正則表達式表達式
String str = "[\u4e00-\u9fa5]*|\w*|\d*|_*";
Pattern pattern = Pattern.compile(str);
//要匹配的字元串
String mStr = "還有多遠_344fjdk";
System.out.println("測試的字元串:"+mStr);
Matcher m = pattern.matcher(mStr);
//如果匹配到了
if(m.find()){
System.out.println("匹配內容:"+m.group());
}
}
程序運行結果:
(3)java正則表達式語法擴展閱讀
匹配包括下劃線的任何單詞字元。類似但不等價於「[A-Za-z0-9_]」,"單詞"字元使用Unicode字元集,中文的為:[\u4e00-\u9fa5],表示英文字母的為w,表示數字的為d,表示_的為_,而*號表示的則是0個或多個,|表示的則是或,所以把每個要匹配的用|拼接可以表示要匹配的正則表達式。
4. java涓媯鏌ュ撳悕鐨勬e垯琛ㄨ揪寮
浠ヤ笅鏄涓涓狫ava涓鐢ㄤ簬媯鏌ュ撳悕鐨勬e垯琛ㄨ揪寮忥紝瀹冭兘澶熷尮閰2鍒8涓奼夊瓧鎴栬2鍒16涓鑻辨枃瀛楁瘝銆
code
String regex = "^([\\u4E00-\\u9FA5]{2,8}|[a-zA-Z]{2,16})$";
鍏蜂綋瑙i噴濡備笅錛
^ 琛ㄧず鍖歸厤瀛楃︿覆鐨勫紑澶
() 琛ㄧず涓涓鎹曡幏緇勶紝鍏朵腑鍖呭惈浜嗕袱涓瀛愭ā寮
[\u4E00-\u9FA5] 琛ㄧず涓涓奼夊瓧瀛楃︼紝鑼冨洿涓篣nicode緙栫爜鐨勪腑鏂囪寖鍥
{2,8} 琛ㄧず璇ュ瓧絎﹀彲浠ュ嚭鐜2鍒8嬈
| 琛ㄧず閫昏緫鎴栵紝琛ㄧず涓や釜瀛愭ā寮忎腑鐨勪換鎰忎竴涓閮藉彲浠ュ尮閰嶆垚鍔
[a-zA-Z] 琛ㄧず涓涓鑻辨枃瀛楁瘝錛屼笉鍖哄垎澶у皬鍐
{2,16} 琛ㄧず璇ュ瓧絎﹀彲浠ュ嚭鐜2鍒16嬈
$ 琛ㄧず鍖歸厤瀛楃︿覆鐨勭粨灝
鍥犳わ紝涓婇潰鐨勬e垯琛ㄨ揪寮忓彲浠ュ尮閰嶉暱搴︿負2鍒8涓奼夊瓧鎴栭暱搴︿負2鍒16涓鑻辨枃瀛楁瘝鐨勫瓧絎︿覆錛屽彲浠ョ敤浜庢鏌ュ撳悕鏄鍚︾﹀悎瑕佹眰銆