程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#正則婚配RegexOptions選項的組合應用辦法

C#正則婚配RegexOptions選項的組合應用辦法

編輯:C#入門知識

C#正則婚配RegexOptions選項的組合應用辦法。本站提示廣大學習愛好者:(C#正則婚配RegexOptions選項的組合應用辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#正則婚配RegexOptions選項的組合應用辦法正文


C#中應用正則所須要援用的定名空間是 using System.Text.RegularExpressions

它包括了8個類,用得最多是的Regex,Regex不只可以用來創立正則表達式,並且供給了許多有效的辦法。

起首來看一下若何創立一個Regex對象:

new Regex(string pattern)

new Regex(string pattern,RegexOptions options)

第一個參數是正則表達式字符串,第二個參數正則設置裝備擺設的選項,有以下幾種選項:

IgnoreCase   //是婚配疏忽年夜小寫 默許情形辨別年夜小寫
RightToLeft   //從右到左查找字符串 默許是從左到右
None    //不設定標記  這是默許選項,就是不設置第2個參數  表現辨別年夜小寫 從左到右
MultiLine   //指定了^和$可以婚配行的開首和開頭,也就是說應用了換行朋分,每行能獲得分歧的婚配
SingleLine   //劃定特別字符"."婚配任一字符,換行符除外。默許情形下特別字符"."不婚配換行

IgnoreCase的例子

string test = "Abcccccc";
Regex reg = new Regex("abc");
Console.WriteLine(reg.IsMatch(test)); //false
Regex reg1 = new Regex("abc",RegexOptions.IgnoreCase); //不辨別年夜小寫
Console.WriteLine(reg1.IsMatch(test));//true

RightToLeft的例子

string test = "vvv123===456vvv";
Regex reg = new Regex("\\d+");// 123  從左到右 婚配持續數字
Console.WriteLine(reg.Match(test));
Regex reg1 = new Regex("\\d+",RegexOptions.RightToLeft);
Console.WriteLine(reg1.Match(test));// 456 從右到左 婚配持續數字

MultiLine的例子

StringBuilder input = new StringBuilder();
input.AppendLine("A bbbb A");
input.AppendLine("C bbbb C");

string pattern = @"^\w";
Console.WriteLine(input.ToString());
MatchCollection matchCol = Regex.Matches(input.ToString(), pattern, RegexOptions.Multiline);
foreach (Match item in matchCol)
{
  Console.WriteLine("成果:{0}", item.Value);
}

這時候能夠有人會問了,假如既想疏忽年夜小寫,又想婚配多行,該怎樣辦呢,就是兩種選項同時知足的情形,該若何做呢?

呵呵,固然是無方法的的,只需用豎線將兩個選項離隔便可以了,以下舉例

Regex.Matches(input.ToString(), pattern, RegexOptions.IgnoreCase | RegexOptions.Multiline);

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved