java 正則為空字串或符合定義規則
在最近的專案中,發現Bean validation時,需要實現如下效果:
1、該欄位可以為空
2、不為空時,需要滿足【漢字+字母+數字】--車牌號
如果在validtion @Pattern註解不加入同時滿足這兩個條件的正則,需要單獨判斷物件,影響程式碼簡潔和效率。
網上多方搜尋後發現如下正則可以滿足:
^(\\s&&[^\\f\\n\\r\\t\\v])* | [\u4e00-\u9fa5][A-Z]\\d{5}$
豎線(表示或者)前部分判斷可以為空,後半部分可以加入自己的邏輯
相關推薦
java 正則為空字串或符合定義規則
在最近的專案中,發現Bean validation時,需要實現如下效果: 1、該欄位可以為空 2、不為空時,需要滿足【漢字+字母+數字】--車牌號 如果在validtion @Pattern註解不加入同時滿足這兩個條件的正則,需要單獨判斷物件,影響程式碼簡潔和效率。 網上
java 正則表示式 提取字串
publicstaticvoid main(String[] args) { String source ="first {test} is here,two {test2} is here!"; String find ="\\u007B.*\\u007D";
java 正則(2) 空行匹配
java 正則 空白行 package test.java.RegExp; import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.Fil
Java正則表示式——驗證手機號碼符合性
regex1驗證條件很方便,可以大範圍覆蓋, 但是還是細分一下使用regex2驗證條件比較好一些。 /** * 驗證手機號碼的合法性 * @author jy */ package mobile; import java.util.regex.Matcher; i
mybatis if test 不為空字串或null
<sql id="public_content"> <if test="productId != null and productId !=''" > and a.product_id = #{productId,jdbcTy
用JAVA正則表示式 刪除字串的特定子串
轉載自:http://chwshuang.iteye.com/blog/1097444 有些字串是我們儲存某種型別名稱的,往往有逗號‘,’或者其他符號來分隔。如果我們刪除某一個引數時,往往沒有陣列或者列表那麼方便。但是,如果有了下面這個方法,我們同樣可以做好。
java正則表示式不以某個字串開頭或結尾
一、不以某個字串開頭 這個問題我們可以用 “否定式向前匹配”來實現,語法 (?!str),表示後面不是接str才匹配前面的字串。如we(?!123)會匹配welcome中的we,但不匹配we123中的we。所以(?!str)的前面不要有字串就表示不以str開頭了。 因此我們
正則表示式判斷字串是否為數字
IF cl_abap_matcher=>matches( pattern = '^(-?[1-9]\d*(\.\d*[1-9])?)|(-?0\.\d*[1-9])$' text = '1.01' ) = abap_true. WRITE '數字'. ELSE.
Java正則入門(1)——去除字串頭尾空格
在其他語言中,\\ 表示:我想要在正則表示式中插入一個普通的(字面上的)反斜槓,請不要給它任何特殊的意義。 在 Java 中,\\ 表示:我要插入一個正則表示式的反斜線,所以其後的字元具有特殊的意義。 所以,在其他的語言中(如Perl),一個反斜槓 \ 就足以具有轉義的作
Java 正則校驗金額,只能是正整數或2位小數以內
參考:https://blog.csdn.net/u012402177/article/details/52604725 public class Test { public static boolean isNumber(String str) {
Java開發筆記(三十七)利用正則串分割字串
前面介紹了處理字串的常用方法,還有一種分割字串的場景也很常見,也就是按照某個規則將字串切割為若干子串。分割規則通常是指定某個分隔符,根據字串內部的分隔符將字串進行分割,例如逗號、空格等等都可以作為字串的分隔符。正好String型別提供了split方法用於切割字串,只要字串變數呼叫split方法,並把分隔符作為
java利用正則表示式提取字串中的整數和小數部分
最近開發遇到一個新的東西,就是前端傳過來一個字串,需要將裡面的數字提取出來,倒騰了一天,最後還是沒有倒騰出來,最後還是借鑑大佬的方法。記錄一下。 首先是前端傳來的字串“小明通過掃碼向你付款100000.566元”其中暱稱和金額不是固定的,其他是固定的。 於是便考慮使用“通過掃碼向你付
如何使用 awk 和正則表示式過濾文字或檔案中的字串
當我們在 Unix/Linux 下使用特定的命令從字串或檔案中讀取或編輯文字時,我們經常需要過濾輸出以得到感興趣的部分。這時正則表示式就派上用場了。 什麼是正則表示式? 正則表示式可以定義為代表若干個字元序列的字串。它最重要的功能之一就是它允許你過濾一條命令或一個檔案的輸出
Java正則表示式替換移除空行和多餘的空格
這幾天重拾Java寫程式碼,需要操作文字檔案中的內容。 最終,要把內容裡的空行和多餘的連續空格移除,使用String裡的replace或者replaceAll,試了很多次都沒有成功。 最後發現需要使用正則表示式Regex。先把解決方案共享如下。 1. 移除多餘的連續空格,只
java 利用正則表示式去處字串中的所有空格
轉載自xcmercy的部落格 目標 去除字串中所有的空白字元,包括空格、製表符、回車符等所有空白字元 思路 根據字串長度,利用迴圈遍歷字串此方法太笨拙。這裡利用正則表示式,匹配所有的空白字元,然後將匹配到的空白字元替換為 “” 空串即可。 程式碼 private St
正則表示式——判斷字串組成,第一個必須是字母,後面可以是字母、數字、下劃線,總長度為5-20
//判斷字串是否是這樣組成的,第一個必須是字母,後面可以是字母、數字、下劃線,總長度為5-20 var c = /^[a-zA-Z]\w{4,19}$/; // /是轉義 ^ 是開頭 [
setlocale(LC_ALL, ""); 取值為空字串" "(注意,不是NULL),則locale與本地環境所使用的編碼方式相同(在本地化時,應該很有用);
在C執行庫提供的多位元組字元-寬字元轉換函式:mbstowcs()/wcstombs()中,需要用到全域性變數locale( locale encoding ),以指定多位元組字元的編碼型別 1. 功能: 用來定義全域性變數:locale(locale encoding) 標頭檔案: setlocal
正則判斷一個字串是否為數字(包括整數和小數)
判斷一個字串是否為數字(包括整數和小數)public class IsNumber { public static boolean isNumeric(String str) {
利用java正則表示式來解析並獲取指定的字串
Java的正則表示式不僅可以用來匹配驗證字串是否符合標準型別,還可以用來解析字串,獲取自己想要得到的資料。在java.util.regex包下提供了系列的類來對字串進行匹配。來看一下下面的例子: public static String parse (String s)
java中String值為空字串與null的判斷方法
Java空字串與null的區別 1、型別 null表示的是一個物件的值,而不是一個字串。例如宣告一個物件的引用,String a=null。 “”表示的是一個空字串