校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > VBS創建正則表達式對象的兩種方法

VBS創建正則表達式對象的兩種方法

熱門標簽:打電話的外呼系統貴不貴 陜西高頻外呼回撥系統哪家好 外呼營銷下單系統 新密防封卡外呼系統違法嗎 百度地圖標注怎么卸載 辦理膠州400電話財稅 前鋒辦理400電話申請 海外美發店地圖標注 加盟電銷機器人好的品牌
一直以來,我都是用 New RegExp 來創建正則表達式對象的:
Set regex = New RegExp然而最新才發現 VBS 的正則表達式對象也可以這樣創建:
Set regex = CreateObject("VBScript.RegExp")貌似我看過的 VBScript 書籍沒有一本介紹過這種寫法,當然,書上沒寫的東西還有很多。

既然提到了正則表達式,那么就順便說一下,VBS 的正則表達式對象是支持 MultiLine 模式的,對象有一個 MultiLine 屬性。運行 Visual C++ 自帶的 OLE View,左邊樹展開 Type Libraries,找到 Microsoft VBScript Regular Expressions 5.5,可以看到該 COM 對象的屬性和方法:
復制代碼 代碼如下:

interface IRegExp2 : IDispatch {
[id(0x00002711), propget]
HRESULT Pattern([out, retval] BSTR* pPattern);
[id(0x00002711), propput]
HRESULT Pattern([in] BSTR pPattern);
[id(0x00002712), propget]
HRESULT IgnoreCase([out, retval] VARIANT_BOOL* pIgnoreCase);
[id(0x00002712), propput]
HRESULT IgnoreCase([in] VARIANT_BOOL pIgnoreCase);
[id(0x00002713), propget]
HRESULT Global([out, retval] VARIANT_BOOL* pGlobal);
[id(0x00002713), propput]
HRESULT Global([in] VARIANT_BOOL pGlobal);
[id(0x00002717), propget]
HRESULT Multiline([out, retval] VARIANT_BOOL* pMultiline);
[id(0x00002717), propput]
HRESULT Multiline([in] VARIANT_BOOL pMultiline);
[id(0x00002714)]
HRESULT Execute(
[in] BSTR sourceString,
[out, retval] IDispatch** ppMatches);
[id(0x00002715)]
HRESULT Test(
[in] BSTR sourceString,
[out, retval] VARIANT_BOOL* pMatch);
[id(0x00002716)]
HRESULT Replace(
[in] BSTR sourceString,
[in] VARIANT replaceVar,
[out, retval] BSTR* pDestString);
};

但是很多書上并沒有介紹,VbsEdit 的自動完成功能中也沒有提示 MultiLine 屬性,甚至微軟官方的參考手冊上也沒有。

最后舉個簡單的例子,假如你想把文本中的空行刪除,可以用下面的代碼:
復制代碼 代碼如下:

'Author: Demon
'Link: http://demon.tw/programming/vbs-regexp-object.html
'Date: 2011/12/26
Dim fso, regex, str
Set fso = CreateObject("Scripting.FileSystemObject")
Set regex = CreateObject("VBScript.RegExp")
str = fso.OpenTextFile("demon.txt").ReadAll
regex.Global = True
regex.MultiLine = True
regex.Pattern = "^\s*\n"
str = regex.Replace(str, "")
'相當于JavaScript中的 str = str.replace(/^\s*\n/gm, "")
fso.OpenTextFile("demon.txt", 2).Write str

原文來自:http://demon.tw/programming/vbs-regexp-object.html
您可能感興趣的文章:
  • 編寫高質量的js之正確理解正則表達式回溯
  • js編寫trim()函數及正則表達式的運用
  • 使用Ruby re模塊創建復雜的正則表達式
  • 用正則表達式 動態創建/增加css style script 兼容IE firefox
  • 正則表達式創建方式的區別及編寫簡單的正則方式(js學習總結)

標簽:四平 阜陽 牡丹江 咸陽 梅州 武威 伊春 河南

巨人網絡通訊聲明:本文標題《VBS創建正則表達式對象的兩種方法》,本文關鍵詞  VBS,創建,正則,表達式,對象,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《VBS創建正則表達式對象的兩種方法》相關的同類信息!
  • 本頁收集關于VBS創建正則表達式對象的兩種方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 墨江| 朝阳区| 保康县| 庐江县| 韶山市| 浪卡子县| 临潭县| 淳安县| 瑞昌市| 新河县| 丹江口市| 二手房| 辽中县| 阳城县| 璧山县| 大足县| 丹棱县| 鸡泽县| 皋兰县| 遂溪县| 耿马| 滁州市| 固安县| 泰来县| 丰宁| 金川县| 萝北县| 德兴市| 漾濞| 新安县| 云林县| 辉县市| 鹰潭市| 印江| 内丘县| 德昌县| 伊通| 合水县| 英德市| 苍梧县| 津南区|