Java 中的正規表示式特殊字元 - Delft Stack

文章推薦指數: 80 %
投票人數:10人

正規表示式是一種表示文字匹配模式的文字語法。

正規表示式使用特殊字元,例如 . 、 + 、 * 、 ? 、 ^ 、 ... Java貼士 如何在Java中以十六進位制字串轉換位元組陣列 如何在Java中執行字串到字串陣列的轉換 如何在Java中將整型int轉換為字元char 如何在Java中從檔案中刪除換行符 如何在Java中按日期對ArrayList中的物件進行排序 如何在Java中比較兩個日期 如何在Java中為日期增加一天 如何在Java中連線兩個陣列 reportthisad 貼士文章 Java貼士 Java中的正規表示式特殊字元 Java正規表示式中的特殊字元 在Java中使用正規表示式特殊字元的示例 Regex(正規表示式)是用於操作、搜尋和處理文字字串的有用工具。

它簡化並減少了程式中的行數。

我們將看看如何在正規表示式中使用特殊字元。

Java正規表示式中的特殊字元 正規表示式是一種表示文字匹配模式的文字語法。

正規表示式使用特殊字元,例如.、+、*、?、^、$、(、)、[、]、{、}、|、\。

正規表示式中的字元(字串中表示其模式的字元)要麼是具有特殊含義的元字元,要麼是具有字面含義的常規字元。

元字元 用途 例子 ^ 字串或否定符號的開頭 ^a匹配字串開頭的a . 匹配除換行符以外的任何單個字元 a.[0-9]匹配a字串,該字串具有a後跟一個字元和一個數字 [] 匹配括號中包含的單個字元的括號表示式 [a-c]等於a或b或c,即a\|b\|c也[abc] [^] 匹配未包含在括號中的單個字元 [^abc]匹配除a、b或c以外的任何字元 $ 隊伍的盡頭 ^abc$匹配以abc開頭和結尾的字串 () 分組字元 (ab)\1匹配abab * 匹配前面的元素或零次或多次 ab*c匹配ac、abc、abbbc等。

{m,n} 匹配前面的元素至少m次且不超過n次 a{3,5}匹配aaa,aaaa,aaaaa ? 匹配前面的元素零次或一次 ab?c匹配ac,abc + 匹配前面的元素一次或多次 ab+c匹配abc、abbc、abbbc等,但不匹配ac \| 選擇運算子,它匹配運算子`\之前的表示式或之後的表示式 ` \ 轉義或反斜槓 常見的轉義序列,如\n或換行符,\t用於製表符 在Java中使用正規表示式特殊字元的示例 在這個例子中,我們使用了java.util.regex包中的Pattern和Matcher類。

Pattern類表示正規表示式。

當我們建立Pattern類的例項時,我們將正規表示式作為字串傳遞。

這裡我們有一個正規表示式regex_pattern作為字串。

此模式用於檢查密碼是否符合以下條件。

密碼中必須包含至少一位[0-9]。

密碼中至少需要一個小寫字元[a-z]。

密碼中至少需要一個大寫字元[A-Z]。

至少一個特殊字元,如!@#&(),必須包含在密碼中。

密碼長度必須至少為8個字元且不超過24個字元。

compile()方法從指定的正規表示式建立一個模式。

稍後我們將使用此模式製作一個Matcher物件。

該模式可以使用Matcher物件與正規表示式的任何字元序列匹配。

matcher方法建立一個匹配器,將給定的輸入與模式匹配。

我們將兩個字串與模式匹配並列印輸出(matches()方法返回的布林值)。

importjava.util.regex.Matcher; importjava.util.regex.Pattern; publicclassRegexTest{ publicstaticvoidmain(String[]args){ Stringregex_pattern= "^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#&()–[{}]:;',?/*~$^+=<>]).{8,24}$"; Patternpattern=Pattern.compile(regex_pattern); StringinputPassword1="Password1@@1990"; StringinputPassword2="Pass190"; Matchermatcher1=pattern.matcher(inputPassword1); Matchermatcher2=pattern.matcher(inputPassword2); System.out.println("Password1matchespattern:"+matcher1.matches()); System.out.println("Password2matchespattern:"+matcher2.matches()); } } 輸出: Password1matchespattern:true Password2matchespattern:false 相關文章-JavaRegex Java中的字串匹配正規表示式 Java中的正規表示式空格 在Java中使用\s Java中的帕斯卡三角形Java中的正規表示式空格 reportthisad xx



請為這篇文章評分?