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

C# 正則表達式整理備忘 (3)

     編輯:關於C語言

正則表達式基礎:擇一匹配、特殊字符轉義、重複描述字符

一、擇一匹配 (|)

(ab|xy) 匹配 ab 或 xy。注意 | 與 () 為整體。
範例:匹配 0-100 數值:


Regex r = new Regex(@"^\+?((100(.0+)*)|([1-9]?[0-9])(\.\d+)*)$");

外層括號包含兩部分:100(.0+)* 與 [1-9]?[0-9](\.\d+)* 為 OR 關係,引擎優先嘗試匹配 100,失敗則匹配 0-99.9...。

二、特殊字符匹配


// 匹配反斜線 \
string x = "\\";
Regex r1 = new Regex("^\\\\$");    // 雙重轉義
Regex r2 = new Regex(@"^\\$");     // 逐字字串
Regex r3 = new Regex("^\\$");      // 錯誤:$ 為結尾錨點

// 匹配雙引號 "
string x = "\"";
Regex r1 = new Regex("^\"$");
Regex r2 = new Regex(@"^""$");

三、重複描述字符

語法含義
{n}前一字符恰好 n 次
{n,}前一字符 n 次或更多
{n,m}前一字符 n 到 m 次
?前一字符 0 或 1 次
+前一字符 1 次或更多
*前一字符 0 次或更多

這是正則表達式「很好很強大」的核心體現。

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