免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Ultrapico Expresso工具學(xué)習(xí)正則表達(dá)式

引用:Ultrapico Expresso是一個(gè)非常強(qiáng)大的正則表達(dá)式構(gòu)建、測(cè)試以及代碼生成工具。它能夠?qū)δ銟?gòu)建的正則表達(dá)式進(jìn)行解析、驗(yàn)證,并輸出解析結(jié)果,提供性能測(cè)試工具,支持C#、VB等代碼生成,最重要的是,他提供了一個(gè)非常方便強(qiáng)大的正則表達(dá)式語法構(gòu)建面板,即使你對(duì)正則表達(dá)式生疏了,也能在它的幫助下構(gòu)建出你想要的正則模式來。而且,它還免費(fèi)獲取授權(quán)碼,無需費(fèi)心找破解了。軟件里自帶的幫助文檔以及正則表達(dá)式庫可以幫助你快速從正則菜鳥升級(jí)為正則高手。


最新版本的Ultrapico Expresso提供下面這些強(qiáng)大的功能:

  • 通過選擇預(yù)編寫代碼片段來創(chuàng)建正則表達(dá)式
  • 可以通過手動(dòng)輸入或者從文件中導(dǎo)入兩種方式來測(cè)試文本
  • 在樹形結(jié)構(gòu)中顯示匹配,顯示捕獲組以及組內(nèi)所有捕獲
  • 加亮源文件中的匹配文本
  • 自動(dòng)查找正則表達(dá)式的語法錯(cuò)誤
  • 生成VB,C#或C++代碼
  • 提供常用正則表達(dá)式庫
  • 優(yōu)化正則表達(dá)式
  • 更多...


首先看Expresso的操作界面:


可以看到打開軟件時(shí)首先是Test Mode, 用戶可以在這里進(jìn)行正則表達(dá)式的驗(yàn)證,并且提供了Regex Analyzer的功能,用戶可以很方便的查看自己書寫的正則式的一些細(xì)節(jié)。除了Test Mode, 還有更為強(qiáng)大的Design Mode與Expression Library(個(gè)人覺得從那個(gè)Expression Library里能學(xué)到很多知識(shí)),具體的使用方法大家自己體會(huì)。 你會(huì)發(fā)現(xiàn),通過這個(gè)工具,學(xué)習(xí)正則表達(dá)式的曲線會(huì)平滑一些的。

更多的學(xué)習(xí)心得待到認(rèn)真學(xué)好RE與這個(gè)工具后再分享。--->To be Continued.

 

一、.Net中的正則表達(dá)式(MSDN)

不同語言、框架中的正則表達(dá)式的語法規(guī)則有所不同,這里只要討論的是.net平臺(tái)下正則表達(dá)式的相關(guān)。.net中使用正則表達(dá)式處理文本的中心構(gòu)件是正則表達(dá)式引擎,該引擎在 .NET Framework 中由 System.Text.RegularExpressions.Regex 對(duì)象表示。 使用正則表達(dá)式處理文本至少要求向該正則表達(dá)式引擎提供以下兩方面的信息:

  • 要在文本中標(biāo)識(shí)的正則表達(dá)式模式(Pattern),在 .NET Framework 中,正則表達(dá)式模式用特殊的語法或語言定義,該語法或語言與 Perl 5 正則表達(dá)式兼容,并添加了一些其他功能,例如從右到左匹配。。
  • 要為正則表達(dá)式模式分析的文本。

 

Regex 類的方法使您可以執(zhí)行以下操作:

  • 通過調(diào)用 IsMatch 方法確定輸入文本中是否具有正則表達(dá)式模式匹配項(xiàng)。
  • 通過調(diào)用 Match 或 Matches 方法檢索匹配正則表達(dá)式模式的一個(gè)或所有文本匹配項(xiàng)。 第一個(gè)方法返回提供有關(guān)匹配文本的信息的 Match 對(duì)象。 第二個(gè)方法返回 MatchCollection 對(duì)象,該對(duì)象對(duì)于在分析的文本中找到的每個(gè)匹配項(xiàng)包含一個(gè) Match 對(duì)象。
  • 通過調(diào)用 Replace 方法替換匹配正則表達(dá)式模式的文本。

 

先用例子來具體說明.net中Regex類的使用方法:

例子一:替換子字符串

1
2
3
4
5
6
7
8
9
10
11
12
13
14
using System;
using System.Text.RegularExpressions;
public class Example
{
   public static void Main()
   {
      string pattern = "(Mr\\.? |Mrs\\.? |Miss |Ms\\.? )";
      string[] names = { "Mr. Henry Hunt", "Ms. Sara Samuels",
                         "Abraham Adams", "Ms. Nicole Norris" };
      foreach (string name in names)
         Console.WriteLine(Regex.Replace(name, pattern, String.Empty));
   }
}

正則表達(dá)式模式 (Mr\.? |Mrs\.? |Miss |Ms\.? ) 可匹配任何“Mr”、“Mr.” 、“Mrs”、“Mrs.” 、“Miss”、“Ms”或“Ms.” . 對(duì) Regex.Replace 方法的調(diào)用會(huì)將匹配的字符串替換為 String.Empty;換句話說,它從原始字符串中將其移除.


例子二:標(biāo)示重復(fù)的單詞

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
using System;
using System.Text.RegularExpressions;
public class Class1
{
   public static void Main()
   {
      string pattern = @"\b(\w+?)\s\1\b";
      string input = "This this is a nice day. What about this? This tastes good. I saw a a dog.";
      foreach (Match match in Regex.Matches(input, pattern, RegexOptions.IgnoreCase))
         Console.WriteLine("{0} (duplicates '{1})' at position {2}",
                           match.Value, match.Groups[1].Value, match.Index);
   }
}
// The example displays the following output:
//       This this (duplicates 'This)' at position 0
//       a a (duplicates 'a)' at position 66

正則表達(dá)式模式 \b(\w+?)\s\1\b 可以解釋如下:

 \b:   在單詞邊界處開始
 (\w+):   匹配一個(gè)或多個(gè)單詞字符,它們一起構(gòu)成可稱為\1的組
 \s:   與空白字符匹配
 \1:   與等于名為\1的組的子字符串匹配
 \b:   與字邊界匹配

通過將正則表達(dá)式選項(xiàng)設(shè)置為 RegexOptions.IgnoreCase,調(diào)用 Regex.Matches 方法. 因此,匹配操作不區(qū)分大小寫,此示例將子字符串“This this”標(biāo)識(shí)為重復(fù).

 

二、RE學(xué)習(xí)資料:

MSDN

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
正則表達(dá)式教程:實(shí)例速查
開發(fā)中常用的正則表達(dá)式
驗(yàn)證E-mail
Ultrapico Expresso v3.0.3276 特別版 正則表達(dá)式開發(fā)工具 雜類...
正則表達(dá)式從單元格中提取數(shù)字
CSDN技術(shù)中心 正則表達(dá)式
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服