VBS教程:VBscript屬性-Pattern 屬性_vbs

來源:互聯網
上載者:User

Pattern 屬性

設定或返回被搜尋的Regex模式。

object.Pattern [= "searchstring"]

參數

object

必選項。總是一個 RegExp 物件變數。

searchstring

可選項的。被搜尋的正則字串運算式。它可能包含設定部分表格中的各種Regex字元。

設定

在書寫Regex的模式時使用了特殊的字元和序列。下表描述了可以使用的字元和序列,並給出了執行個體。

字元 描述
\ 將下一個字元標記為特殊字元或字面值。例如"n"與字元"n"匹配。"\n"與分行符號匹配。序列"\\"與"\"匹配,"\("與"("匹配。
^ 匹配輸入的開始位置。
$ 匹配輸入的結尾。
* 匹配前一個字元零次或幾次。例如,"zo*"可以匹配"z"、"zoo"。
+ 匹配前一個字元一次或多次。例如,"zo+"可以匹配"zoo",但不匹配"z"。
? 匹配前一個字元零次或一次。例如,"a?ve?"可以匹配"never"中的"ve"。
. 匹配分行符號以外的任何字元。
(pattern) 與模式比對並記住匹配。匹配的子字串可以從作為結果的 Matches 集合中使用 Item [0]...[n]取得。如果要匹配括弧字元(和 ),可使用"\(" 或 "\)"。
x|y 匹配 x 或 y。例如 "z|food" 可匹配 "z" 或 "food"。"(z|f)oo" 匹配 "zoo" 或 "food"。
{n} n 為非負的整數。匹配恰好n次。例如,"o{2}" 不能與 "Bob 中的 "o" 匹配,但是可以與"foooood"中的前兩個o匹配。
{n,} n 為非負的整數。匹配至少n次。例如,"o{2,}"不匹配"Bob"中的"o",但是匹配"foooood"中所有的o。"o{1,}"等價於"o+"。"o{0,}"等價於"o*"。
{n,m} m 和 n 為非負的整數。匹配至少 n 次,至多 m 次。例如,"o{1,3}" 匹配 "fooooood"中前三個o。"o{0,1}"等價於"o?"。
[xyz] 一個字元集。與括弧中字元的其中之一匹配。例如,"[abc]" 匹配"plain"中的"a"。
[^xyz] 一個否定的字元集。匹配不在此括弧中的任何字元。例如,"[^abc]" 可以匹配"plain"中的"p".
[a-z] 表示某個範圍內的字元。與指定區間內的任何字元匹配。例如,"[a-z]"匹配"a"與"z"之間的任何一個小寫字母字元。
[^m-z] 否定的字元區間。與不在指定區間內的字元匹配。例如,"[m-z]"與不在"m"到"z"之間的任何字元匹配。
\b 與單詞的邊界匹配,即單詞與空格之間的位置。例如,"er\b" 與"never"中的"er"匹配,但是不匹配"verb"中的"er"。
\B 與非單詞邊界匹配。"ea*r\B"與"never early"中的"ear"匹配。
\d 與一個數字字元匹配。等價於[0-9]。
\D 與非數位字元匹配。等價於[^0-9]。
\f 與分頁符匹配。
\n 與分行符號字元匹配。
\r 與斷行符號字元匹配。
\s 與任何白字元匹配,包括空格、定位字元、分頁符等。等價於"[ \f\n\r\t\v]"。
\S 與任何非空白的字元匹配。等價於"[^ \f\n\r\t\v]"。
\t 與定位字元匹配。
\v 與垂直定位字元匹配。
\w 與任何單詞字元匹配,包括底線。等價於"[A-Za-z0-9_]"。
\W 與任何非單詞字元匹配。等價於"[^A-Za-z0-9_]"。
\num 匹配 num個,其中 num 為一個正整數。引用回到記住的匹配。例如,"(.)\1"匹配兩個連續的相同的字元。
\n 匹配 n,其中n 是一個八進位換碼值。八進位換碼值必須是 1, 2 或 3 個數字長。例如,"\11" 和 "\011" 都與一個定位字元匹配。"\0011"等價於"\001" 與 "1"。八進位換碼值不得超過 256。否則,只有前兩個字元被視為運算式的一部分。允許在Regex中使用ASCII碼。
\xn 匹配n,其中n是一個十六進位的換碼值。十六進位換碼值必須恰好為兩個數字長。例如,"\x41"匹配"A"。"\x041"等價於"\x04" 和 "1"。允許在Regex中使用 ASCII 碼。

說明

下面的代碼說明了 Pattern 屬性的用法:

Function RegExpTest(patrn, strng)  Dim regEx,Match,Matches         '建立變數。  Set regEx = New RegExp         '建立一般運算式。  regEx.Pattern= patrn         '設定模式。  regEx.IgnoreCase = True         '設定是否區分大小寫。regEx.Global=True                             '設定全域可用性。set Matches=regEx.Execute(string)             '重複匹配集合  RegExpTest = regEx.Execute(strng)      '執行搜尋。for each match in matches                    '重複匹配集合RetStr=RetStr &"Match found at position "RetStr=RetStr&Match.FirstIndex&".Match Value is '"RetStr=RetStr&Match.Value&"'."&vbCRLF NextRegExpTest=RetStrEnd FunctionMsgBox(RegExpTest("is.", "IS1 is2 IS3 is4"))

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.