第十八章 正規表示式 時間相關類

2021-10-02 02:19:06 字數 4085 閱讀 2997

正規表示式是乙個字串,使用單個字串來描述、用來定義匹配規則,匹配一系列符合某個句法規則的字串。
正規表示式的語法規則:

字元:x

含義:代表的是字元x

例如:匹配規則為 "a",那麼需要匹配的字串內容就是 」a」

字元:\\

含義:代表的是反斜線字元'\'

例如:匹配規則為"\\" ,那麼需要匹配的字串內容就是 」\」

字元:\t

含義:製表符

例如:匹配規則為"\t" ,那麼對應的效果就是產生乙個製表符的空間

字元:\n

含義:換行符

字元:\r

含義:回車符

字元類:[abc]

含義:代表的是字元a、b 或 c

例如:匹配規則為"[abc]" ,那麼需要匹配的內容就是字元a,或者字元b,或字元c的乙個

字元類:[^abc]

含義:代表的是除了 a、b 或 c以外的任何字元

例如:匹配規則為"[^abc]",那麼需要匹配的內容就是不是字元a,或者不是字元b,或不是字元c的任意乙個字元

字元類:[a-za-z]

含義:代表的是a 到 z 或 a 到 z,兩頭的字母包括在內

例如:匹配規則為"[a-za-z]",那麼需要匹配的是乙個大寫或者小寫字母

字元類:[0-9]

含義:代表的是 0到9數字,兩頭的數字包括在內

例如:匹配規則為"[0-9]",那麼需要匹配的是乙個數字

字元類:[a-za-z_0-9]

含義:代表的字母或者數字或者下劃線(即單詞字元)

例如:匹配規則為" [a-za-z_0-9] ",那麼需要匹配的是乙個字母或者是乙個數字或乙個下滑線

預定義字元類:.

含義:代表的是任何字元

例如:匹配規則為" . ",那麼需要匹配的是乙個任意字元。如果,就想使用 . 的話,使用匹配規則"\\."來實現

預定義字元類:\d

含義:代表的是 0到9數字,兩頭的數字包括在內,相當於[0-9]

例如:匹配規則為"\d ",那麼需要匹配的是乙個數字

預定義字元類:\w

例如:匹配規則為"\w ",,那麼需要匹配的是乙個字母或者是乙個數字或乙個下滑線

邊界匹配器:^

含義:代表的是行的開頭

例如:匹配規則為^[abc][0-9]$ ,那麼需要匹配的內容從[abc]這個位置開始, 相當於左雙引號

邊界匹配器:$

含義:代表的是行的結尾

例如:匹配規則為^[abc][0-9]$ ,那麼需要匹配的內容以[0-9]這個結束, 相當於右雙引號

邊界匹配器:\b

含義:代表的是單詞邊界

例如:匹配規則為"\b[abc]\b" ,那麼代表的是字母a或b或c的左右兩邊需要的是非單詞字元([a-za-z_0-9])

數量詞:x?

含義:代表的是x出現一次或一次也沒有

例如:匹配規則為"a?",那麼需要匹配的內容是乙個字元a,或者乙個a都沒有

數量詞:x*

含義:代表的是x出現零次或多次

例如:匹配規則為"a*" ,那麼需要匹配的內容是多個字元a,或者乙個a都沒有

數量詞:x+

含義:代表的是x出現一次或多次

例如:匹配規則為"a+",那麼需要匹配的內容是多個字元a,或者乙個a

數量詞:x

含義:代表的是x出現恰好 n 次

例如:匹配規則為"a",那麼需要匹配的內容是5個字元a

數量詞:x

含義:代表的是x出現至少 n 次

例如:匹配規則為"a",那麼需要匹配的內容是最少有5個字元a

數量詞:x

含義:代表的是x出現至少 n 次,但是不超過 m 次

例如:匹配規則為"a",那麼需要匹配的內容是有5個字元a 到 8個字元a之間

1. public boolean matches(string regex) //判斷字串是否匹配給定的規則

2. public string split(string regex) //根據給定正規表示式的匹配規則,拆分此字串

3. public string replaceall(string regex,string replacement) //將符合規則的字串內容,全部替換為新字串

類 date 表示特定的瞬間,精確到毫秒。

a:構造方法

public date(

)// 系統當前日期時間

public date(long date) 得到乙個2023年1月1日 0點這個時間基礎上,加上引數date 毫秒值

對應的日期時間

b:成員方法

gettime(

):把日期物件轉換成對應的時間毫秒值

settime(long time)

c:日期和毫秒值的相互轉換

dateformat 是日期/時間格式化子類的抽象類,它以與語言無關的方式格式化並解析日期或時間。日期/時間格式化子類(如 ******dateformat類)允許進行格式化(也就是日期 -> 文字)、解析(文字-> 日期)和標準化。

要格式化乙個當前語言環境下的日期也就是日期 -> 文字),要通過下面的方法來完成。

dateformat是抽象類,我們需要使用其子類******dateformat來建立物件。

構造方法

public ******dateformat() 預設的格式化操作

public ******dateformat(string pattern) 按照指定的格式,進行日期格式化

☞ dateformat類的作用:即可以將乙個date物件轉換為乙個符合指定格式的字串,

也可以將乙個符合指定格式的字串轉為乙個date物件。

指定格式的具體規則我們可參照******dateformat類的說明,這裡做簡單介紹,

規則是在乙個字串中,會將以下字母替換成對應時間組成部分,剩餘內容原樣輸出:

1)當出現y時,會將y替換成年

2)當出現m時,會將m替換成月

3)當出現d時,會將d替換成日

4)當出現h時,會將h替換成時

5)當出現m時,會將m替換成分

6)當出現s時,會將s替換成秒

1. format方法,用來將date物件轉換成string

2. parse方法,用來將string轉換成date**換時,該string要符合指定格式,否則不能轉換)

calendar是日曆類,在date後出現,替換掉了許多date的方法。

該類將所有可能用到的時間資訊封裝為靜態成員變數,方便獲取。

calendar為抽象類,由於語言敏感性,calendar類在建立物件時並非直接建立,

而是通過靜態方法建立,將語言敏感內容處理好,再返回子類物件,如下:

calendar類靜態方法

calendar c = calendar.getinstance(); //返回當前時間

1. public static calendar getinstance() //獲取日期物件

2. public int get(int field) //獲取時間字段值,字段參見幫助文件

3. year 年

month 月,從0開始算起,最大11;0代表1月,11代表12月。

date 天

hour 時

minute分

second秒

4. public void add(int field,int amount) //指定字段增加某值

5. public final void set(int field,int value)//設定指定欄位的值

6. public final date gettime() //獲取該日曆物件轉成的日期物件

1) 西方星期的開始為週日,中國為周一。

2) 在calendar類中,月份的表示是以0-11代表1-12月。

正規表示式 相關

限定符 說明 指定零個或更多個匹配 例如 w 或 abc 等效於。指定乙個或多個匹配 例如 w 或 abc 等效於。指定零個或乙個匹配 例如 w?或 abc 等效於。指定恰好 n 個匹配 例如 pizza 指定至少 n 個匹配 例如 abc 指定至少n 個但不多於m 個匹配。指定盡可能少地使用重複的...

正規表示式相關

我們知道匹配字串通常用正規表示式,因為幾乎每種語言都有自己的正規表示式引擎,所以效率會比你自己寫演算法要高效的多。下面來看下一些常用的正規表示式運算子。注意 這裡主要是個人總結,所以都會以一些自己用到的東西為主,如果要看具體的api,請在網上查詢 基礎知識儲備 稍微注意下一些細節的地方,比如 和 的...

正規表示式相關

table 特殊符號 代表意義 alnum 代表英文大小寫字元及數字,亦即 0 9,a z,a z alpha 代表任何英文大小寫字元,亦即 a z,a z blank 代表空白鍵與 tab 按鍵兩者 cntrl 代表鍵盤上面的控制按鍵,亦即包括 cr,lf,tab,del.等等 digit 代表數...