Java基礎學習總結(4) 常用正規表示式列表

2021-07-23 19:58:01 字數 1319 閱讀 2099

很多不太懂正則的朋友,在遇到需要用正則校驗資料時,往往是在網上去找很久,結果找來的還是不很符合要求。所以我最近把開發中常用的一些正規表示式整理了一下,包括校驗數字、字元、一些特殊的需求等等。給自己留個底,也給朋友們做個參考。

網域名稱:[a-za-z0-9][-a-za-z0-9](/.[a-za-z0-9][-a-za-z0-9])+/.?

interneturl:[a-za-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$

手機號碼:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d$

**號碼(「***-******x」、」***x-******xx」、」***-******x」、」***-******xx」、」******x」和」******xx):^($$\d-)|\d-)?\d$

國內**號碼(0511-4405222、021-87888822):\d-\d|\d-\d

身份證號(15位、18位數字):^\d|\d$

短身份證號碼(數字、字母x結尾):^([0-9])(x|x)?$ 或 ^\d|[0-9x]|[0-9x]?$

帳號是否合法(字母開頭,允許5-16位元組,允許字母數字下劃線):^[a-za-z][a-za-z0-9_]$

密碼(以字母開頭,長度在6~18之間,只能包含字母、數字和下劃線):^[a-za-z]\w$

強密碼(必須包含大小寫字母和數字的組合,不能使用特殊字元,長度在8-10之間):^(?=.*\d)(?=.*[a-z])(?=.*[a-z]).$

日期格式:^\d-\d-\d

一年的12個月(01~09和1~12):^(0?[1-9]|1[0-2])$

乙個月的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$

錢的輸入格式:

xml檔案:^([a-za-z]+-?)+[a-za-z0-9]+\\.[x|x][m|m][l|l]$

中文字元的正規表示式:[\u4e00-\u9fa5]

雙位元組字元:[^\x00-\xff] (包括漢字在內,可以用來計算字串的長度(乙個雙位元組字元長度計2,ascii字元計1))

空白行的正規表示式:\n\s*\r (可以用來刪除空白行)

html標記的正規表示式:<(\s*?)[^>]*>.*?|<.*? /> (網上流傳的版本太糟糕,上面這個也僅僅能部分,對於複雜的巢狀標記依舊無能為力)

首尾空白字元的正規表示式:^\s*|\s*$或(^\s*)|(\s*$) (可以用來刪除行首行尾的空白字元(包括空格、製表符、換頁符等等),非常有用的表示式)

java基礎學習(4)

陣列 1.陣列求最值 2.陣列的插入乙個元素 3.陣列的排序 a 使用arrays.sort 排序 b 氣泡排序 4.陣列的逆序 5.遍歷陣列 for int i 0 i 陣列名.length i 6.arrays類 boolean a arrays.equals 陣列1,陣列2 比較2個陣列是否相...

JAVA基礎總結4 陣列

陣列 是具有相同資料型別的一組資料的集合 陣列的建立和使用 一維陣列 1.一維陣列的建立 一維陣列的建立方式有兩種但原理都是一樣的 第一種 先宣告,再用new運算子進行分配 如 int arr arr new int 5 第二種 一步到位 如 int arr new int 5 2.陣列的初始化 陣...

Java基礎知識總結 4

流程控制 順序 選擇 迴圈 switch結構 判斷條件是常量值 switch n while 迴圈條件 至少執行一次,最後分號 別丟 這個初學者容易忘 for迴圈 for 表示式1 表示式2 表示式3 語句 三個表示式都可以省略 int i 1 for i 0 i 這樣表示式2省略 for i 永遠...