首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> C# >> 關於C#

C# 正則表達式量詞完整教學:* + ? {n,m} 使用技巧與常見錯誤

     編輯:關於C#

量詞基礎語法

量詞指定前面元素 (字元、群組、字元類別) 重複次數。掌握量詞是撰寫彈性模式的基礎。

基本量詞對照

符號意義等價寫法
*0 次或多次{0,}
+1 次或多次{1,}
?0 次或 1 次 (可選){0,1}
{n}恰好 n 次-
{n,}至少 n 次-
{n,m}n 到 m 次-

實戰範例

// IP 位址簡易驗證 (未檢查 0-255 範圍)
^\d{1,3}(\.\d{1,3}){3}$

// 手機號碼 (台灣格式)
^09\d{8}$

// 身分證字號 (1 英字 + 9 數字)
^[A-Z][12]\d{8}$

// 密碼強度:8-16 字元,含大小寫數字特殊符號
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[!@#$%]).{8,16}$

// HTML 標籤屬性值 (雙引號)
\w+="[^"]*"

// CSV 欄位 (簡易,未處理逸出)
[^,\n]*

量詞與字元類別組合

  • \d+ : 一或多個數字
  • \s* : 零或多個空白
  • [a-zA-Z]{3,10} : 3-10 個英文字母
  • (?:\d{3}-){2}\d{4} : 電話格式 (非捕獲群組重複)

常見錯誤與修正

錯誤模式問題修正
.* 比對 HTML 標籤貪婪跨標籤.*? 或 [^>]*
\d* 驗證必填數字允許空字串\d+ 或 \d{1,}
(.+)\1 偵測重複貪婪導致誤判(.+?)\1 或固定寬度
{1,} 寫法冗長可簡化+

量詞表格
範例1
範例2
範例3

本文對應《叩響 C# 之門》第 20.4 節教學內容

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved