a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Regex > 正文

VBS中的正則表達式的用法大全

2020-03-16 21:22:50
字體:
來源:轉載
供稿:網友
這篇文章主要為大家介紹下VBS中的正則表達式的一些使用方法,需要的朋友可以參考下
 
 
VBS正則表達式函數 
主要用在asp中效果明顯 
1、表單驗證功能
復制代碼代碼如下:
Function Validate(strng,patrn)  
 Dim regEx  
 Set regEx = New RegExp  
 regEx.Pattern = patrn  
 regEx.IgnoreCase = True  
 regEx.Global = True  
 Validate = regEx.test(strng)  
 Set regEx = Nothing  
End Function 


使用例子 

  If Validate(Fdr.Name,"F/d{4}_P/d{4}")=True Then 
     ... ... 
  End If 
  1. <input name=vevb  value="13003523068">  
  2. <button onclick=checkit(vevb.value)>測試</button>   
  3. <script language=vbscript>     
  4. function check(str)     
  5. dim re  
  6. set re=new regexp  
  7. re.global=true  
  8. re.ignorecase=true  
  9. re.pattern="1[3|5]/d{9}"    
  10. check=re.test(str)  
  11. set re=nothing  
  12. end function  
  13.  
  14. sub checkit(str)  
  15. if check(str)=true then  
  16. msgbox "是手機"  
  17. else  
  18. msgbox "不是手機"  
  19. end if  
  20. end sub  
  21. </script> 


2、替換功能
復制代碼代碼如下:

'========================== 
'用正則表達式實現替換 
'========================== 
function replaceregex(patern,str,tagstr) 
dim regex,matches 
set regex=new regExp 
regex.pattern=patern 
regex.IgnoreCase=true 
regex.global=true 
matches=regex.replace(str,tagstr) 
replaceregex=matches 
end function

3、ubb功能


以下是 作者:LCX的內容

以前一直沒有好好的學過,這次整理一下。

正則中/d+就是代表一個或多個數字,用這個做例子。

RegExp就是建立正則的對像。如Set regEx = New RegExp。regEx.Pattern 就是來設置正則的模式的,如

regEx.Pattern ="/d+"。regEx.IgnoreCase = True   ' 設置是否區分大小寫。regEx.Global = True   ' 設置全程可用性。

RegExp對像有3種方法,分別是execute、test、replace。

test方法是對指定的字符串執行一個正則表達式搜索,并返回一個 Boolean 值指示是否找到匹配的模式。RegExp.Global屬性對Test方法沒有影響。如果找到了匹配的模式,Test方法返回True;否則返回False。

例子:

 

復制代碼代碼如下:

Function RegExpTest(patrn, strng)
Dim regEx, retVal            ' 建立變量。
Set regEx = New RegExp         ' 建立正則表達式。
regEx.Pattern = patrn         ' 設置模式。
regEx.IgnoreCase = False         ' 設置是否區分大小寫。
retVal = regEx.Test(strng)         ' 執行搜索測試。
If retVal Then
    RegExpTest = "找到一個或多個匹配。"
Else
    RegExpTest = "未找到匹配。"
End If
End Function
MsgBox(RegExpTest("/d+", "abcd1234"))
MsgBox(RegExpTest("/d+", "abcd"))

 

Replace 方法替換在正則表達式查找中找到的文本,例子:

 

復制代碼代碼如下:

Function ReplaceTest(patrn, replStr)
Dim regEx, str1               ' 建立變量。
str1 = "dog 123."
Set regEx = New RegExp               ' 建立正則表達式。
regEx.Pattern = patrn               ' 設置模式。
regEx.IgnoreCase = True               ' 設置是否區分大小寫。
ReplaceTest = regEx.Replace(str1, replStr)         ' 作替換。
End Function

MsgBox(ReplaceTest("/d+", "cat")) ‘將字符串中的123替換為cat

 

Execute 方法,則是對指定的字符串執行正則表達式搜索。這里又涉及到Match對像和Matches 集合。Matches 集合就是match的對像集合。Matches 集合中包含若干獨立的 Match 對象,只能使用 RegExp 對象的 Execute 方法來創建之。例子:

 

復制代碼代碼如下:

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(strng)   ' 執行搜索。
   For Each Match in Matches      ' 遍歷 Matches 集合。
      RetStr = RetStr & Match.FirstIndex & "。匹配的長度為"&" "
RetStr = RetStr & Match.Length &" "
      RetStr = RetStr & Matches(0) &" "      '值為123
     RetStr = RetStr & Matches(1)&" "      '值為44
    RetStr = RetStr & Match.value&" "    '值為123和44的數組
     RetStr = RetStr & vbCRLF
   Next
   RegExpTest = RetStr
End Function
MsgBox(RegExpTest("/d+", "123a44"))

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产婷婷精品 | 国产欧美精品一区aⅴ影院 日韩精品区 | 国产精品视频一区二区噜噜 | 国产伦精品一区二区三区照片91 | 国产午夜精品在线 | 国产毛片在线看 | 超碰在线天天 | 国产精品1区2区 | 成人三级视频 | 青青免费在线视频 | 一区二区三区国产精品 | 日韩欧美国产精品综合嫩v 午夜精品久久久久久久久 97色在线视频 | 亚洲男人天堂2023 | 亚州国产精品 | 欧美色综合一区二区三区 | 极品美女中出 | 国产福利在线播放麻豆 | 日韩高清国产一区在线 | 国产精品美女视频 | 日韩在线欧美 | 99精品亚洲国产精品久久不卡 | 99热在线播放 | 欧美成人a交片免费看 | 最新国产在线 | 特级丰满少妇一级aaaa爱毛片 | 国产在线激情视频 | 久久亚洲国产精品日日av夜夜 | 日韩和欧美的一区二区 | 北条麻妃一区二区在线 | 中文字幕一区二区三区四区 | 国产精品一区二区三区99 | 精品视频一区二区 | sis色中色 | 91精品久久久久久综合五月天 | 在线一区二区三区四区 | 欧美精品一区二区三区在线播放 | 99久久久久国产精品免费 | 成人二区 | 99视频在线看 | 日韩中文字幕在线视频 | 久久久久久亚洲 |