網(wǎng)站首頁 編程語言 正文
一.正則基礎
1. []方括號表示匹配可以匹配方括號中的任意點單個字符,方括號只允許匹配單個字符。
2. | 或表示兩項之間的一個選擇,它不能和方括號使用,只能和小括號使用。
3. ()小括號表示一個子表達式的開始和結束位置
4. ^ 否符號,如果用在方括號內,“^”表示不想要匹配的字符。
5. . 點字符:匹配除換行符 \n 之外的任何單字符。要匹配 . ,請使用 \. 。
6. 定位符:定位符使您能夠將正則表達式固定到行首或行尾,^ 和 $ 分別指字符串的開始與結束
7. 限定符:限定符用來指定正則表達式的一個給定組件必須要出現(xiàn)多少次才能滿足匹配
- * 表示匹配前面的子表達式0次或多次
- ?表示匹配前面的子表達式0次或一次
- + 表示匹配前面的子表達式至少匹配一次
- {n} 表示匹配前面的子表達式n次
- {n,m} 表示匹配前面的子表達式從n次到m次
8. 轉義字符?
- \d 匹配一個數(shù)字字符。等價于 [0-9]。
- \D 匹配一個非數(shù)字字符。等價于 [^0-9]。
- \s 匹配任何空白字符,包括空格、制表符、換頁符等等。等價于 [ \f\n\r\t\v]。
- \S 匹配任何非空白字符。等價于 [^ \f\n\r\t\v]。
- \w 匹配字母、數(shù)字、下劃線。等價于'[A-Za-z0-9_]'。
- \W 匹配非字母、數(shù)字、下劃線。等價于 '[^A-Za-z0-9_]'。
- \n 匹配一個換行符
- \r 匹配一個回車符
- \b 匹配一個單詞邊界,即字與空格間的位置。匹配單詞的開始或者結尾部分
- \B 匹配非單詞邊界 匹配單詞的中間部分,例如:匹配:Chapter中的apt,/\Bapt/
二.常用的匹配符
只能輸入數(shù)字:"^[0-9]*$"。
只能輸入n位的數(shù)字:"^\d{n}$"。
只能輸入至少n位的數(shù)字:"^\d{n,}$"。
只能輸入m~n位的數(shù)字:。"^\d{m,n}$"
只能輸入零和非零開頭的數(shù)字:"^(0|[1-9][0-9]*)$"。
只能輸入有兩位小數(shù)的正實數(shù):"^[0-9]+(.[0-9]{2})?$"。
只能輸入有1~3位小數(shù)的正實數(shù):"^[0-9]+(.[0-9]{1,3})?$"。
只能輸入非零的正整數(shù):"^\+?[1-9][0-9]*$"。
只能輸入非零的負整數(shù):"^\-[1-9][]0-9"*$。
只能輸入長度為3的字符:"^.{3}$"。
只能輸入由26個英文字母組成的字符串:"^[A-Za-z]+$"。
只能輸入由26個大寫英文字母組成的字符串:"^[A-Z]+$"。
只能輸入由26個小寫英文字母組成的字符串:"^[a-z]+$"。
只能輸入由數(shù)字和26個英文字母組成的字符串:"^[A-Za-z0-9]+$"。
只能輸入由數(shù)字、26個英文字母或者下劃線組成的字符串:"^\w+$"。
驗證用戶密碼:"^[a-zA-Z]\w{5,17}$"正確格式為:以字母開頭,長度在6~18之間,只能包含字符、數(shù)字和下劃線。
驗證是否含有^%&’,;=?$\"等字符:"[^%&’,;=?$\x22]+"。
只能輸入漢字:"^[\u4e00-\u9fa5]{0,}$"
驗證Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
驗證InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
驗證電話號碼:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正確格式為:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
驗證身份證號(15位或18位數(shù)字):"^\d{15}|\d{18}$"。
驗證一年的12個月:"^(0?[1-9]|1[0-2])$"正確格式為:"01"~"09"和"1"~"12"。
驗證一個月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正確格式為;"01"~"09"和"1"~"31"
三.使用方法
public static bool Match(string strValue)
{
bool result = Regex.IsMatch(strValue, @"^-[1-9][0-9]*$");
return result;
}
原文鏈接:https://www.cnblogs.com/wml-it/p/12204277.html
相關推薦
- 2022-03-06 SQLServer批量插入數(shù)據(jù)的三種方式及性能對比_C#教程
- 2023-02-23 Python利用Flask動態(tài)生成漢字頭像_python
- 2023-04-12 在redis中防止消息丟失的機制_Redis
- 2022-08-01 混淆矩陣Confusion?Matrix概念分析翻譯_其它綜合
- 2022-08-16 Python中集合的創(chuàng)建及常用函數(shù)的使用詳解_python
- 2022-03-10 你知道如何自定義sort函數(shù)中的比較函數(shù)_C 語言
- 2022-12-27 C++實現(xiàn)STL迭代器萃取的示例代碼_C 語言
- 2022-04-03 Go語言讀取txt文檔的操作方法_Golang
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支