概述C#字符串搜索
1、正則表達式簡介
正則表達式提供了功能強大、靈活而又高效的方法來處理文本。正則表達式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提取、編輯、替換或刪除文本子字符串;或?qū)⑻崛〉淖址砑拥郊弦陨蓤蟾妗τ谔幚碜址ɡ?HTML 處理、日志文件分析和 HTTP 標(biāo)頭分析)的許多應(yīng)用程序而言,正則表達式是不可缺少的工具。
.NET 框架正則表達式并入了其他正則表達式實現(xiàn)的最常見功能,被設(shè)計為與 Perl 5 正則表達式兼容,.NET 框架正則表達式還包括一些在其他實現(xiàn)中尚未提供的功能,.NET 框架正則表達式類是基類庫的一部分,并且可以和面向公共語言運行庫的任何語言或工具一起使用。
2、C#字符串搜索
正則表達式語言由兩種基本字符類型組成:原義(正常)文本字符和元字符。正是元字符組為正則表達式提供了處理能力。當(dāng)前,所有的文本編輯器都有一些搜索功能,通??梢源蜷_一個對話框,在其中的一個文本框中鍵入要定位的字符串,如果還要同時進行替換操作,可以鍵入一個替換字符串,比如在Windows操作系統(tǒng)中的記事本、Office系列中的文檔編輯器都有這種功能。這種搜索最簡單的方式,這類問題很容易用String類的 String.Replace()方法來解決,但如果需要在文檔中識別某個重復(fù)的,該怎么辦?編寫一個例程,從一個String類中選擇重復(fù)的字是比較復(fù)雜的,此時使用語言就很適合。
一般表達式語言是一種可以編寫C#字符串搜索表達式的語言。在該語言中,可以把文檔中要搜索的文本、轉(zhuǎn)義序列和特定含義的其他字符組合在一起,例如序列\(zhòng)b表示一個字的開頭和結(jié)尾(子的邊界),如果要表示正在查找的以字符th開頭的字,就可以編寫一般表達式\bth(即序列字符界是-t-h)。如果要搜索所有以th結(jié)尾的字,就可以編寫th\b(序列t-h-字邊界)。但是,一般表達式要比這復(fù)雜得多,例如,可以在C#字符串搜索操作中找到存儲部分文本的工具性程序(facility)。
【編輯推薦】