亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? htmlprocess.bas

?? 監控類的開發
?? BAS
?? 第 1 頁 / 共 2 頁
字號:
Attribute VB_Name = "HtmlProcess"
Option Explicit
'depend on StringProcess.bas

Public Const cStrCharSet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
Public Const cStrNumSet = "0123456789"
Public Const cEnMark = "~!@# $%^&*()_+|\=-`{}:<>?[];',./"  'Plus "
Public Const cCnMark = "~!-+·─.—、“”【 】:;‘’《》,。…?『』「」〈〉〔〕〖〗"
Public Const cEnToCnMark = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789` ̄!@#$%^&*()-_+\|[]{}' <>/"
Public Const cCnMarkSeg = ",。!;:、,.; :"
Public Const cIllegalFileChars = "\/:*?<>|"
Public Const cStrDigitSet = "0123456789+,-."
Public Const cCnNumSet1 = "0○零一二三四五六七八九十百千"
Public Const cCnNumSet2 = "零壹貳叁肆伍陸柒捌玖拾"

Public Function GetstrAllCharSet() As String
  GetstrAllCharSet = cStrCharSet + cStrNumSet + cEnMark + cCnMark + cEnToCnMark + Chr(&H22)
End Function

Public Function GetstrAllIllegalFileChars() As String
  GetstrAllIllegalFileChars = cIllegalFileChars + Chr(&H22)
End Function

Public Function FindNextTagUnit(ByVal strSource As String, lLocation As Long, strMarkFirst As String, strMarkSecond As String) As String
  'get string such as <html>
  Dim lTmp1 As Long
  Dim lTmp2 As Long
  Dim lStart As Long
  
  lStart = lLocation
  If lStart = 0 Then lStart = 1
  lTmp1 = InStr(lStart, LCase(strSource), strMarkFirst)
  
  If lTmp1 = 0 Then FindNextTagUnit = ""
  
  If Mid(strSource, lTmp1 + 1, 1) = "!" Then
    'process <!--    ....   -->
    lTmp2 = InStr(lStart, strSource, "--" + strMarkSecond)
    lTmp2 = lTmp2 + 2
  Else
    lTmp2 = InStr(lStart, LCase(strSource), strMarkSecond)
  End If
  
  If lTmp2 = 0 Then FindNextTagUnit = ""
  
  If lTmp1 >= 1 And lTmp2 > lTmp1 Then
    FindNextTagUnit = Mid(strSource, lTmp1, lTmp2 - lTmp1 + 1)
  End If
  
  If lTmp1 >= 1 And lTmp2 < lTmp1 Then
    lTmp2 = InStr(lTmp1 + 1, strSource, strMarkSecond)
    If lTmp2 < lTmp1 Then
      FindNextTagUnit = ""
    Else
      FindNextTagUnit = Mid(strSource, lTmp1, lTmp2 - lTmp1 + 1)
    End If
  End If
End Function

Public Function GetTagMark(ByVal strSource As String) As String
  'from <Script ...> or </Script> to Script
  Dim nLocation As Integer
  
  nLocation = InStr(1, strSource, " ")
  If nLocation = 0 Then
    GetTagMark = Mid(strSource, 2, Len(strSource) - 2)
  Else
    GetTagMark = Mid(strSource, 2, nLocation - 2)
  End If
End Function

Public Function SkipNoTagUnit(ByVal strSource As String, lLocation As Long, strMarkFirst As String, strMarkSecond As String, nTags As Integer) As Long
  Dim lTmp As Long
  Dim lTmpLoc As Long
  Dim I As Integer
  Dim strTmp As String
  
  lTmpLoc = lLocation
  If lTmpLoc < 1 Then lTmpLoc = 1
  
  For I = 1 To nTags
    strTmp = FindNextTagUnit(strSource, lTmpLoc, strMarkFirst, strMarkSecond)
    lTmp = Len(strTmp)
    If lTmp = 0 Then Exit For
    lTmp = InStr(lTmpLoc, LCase(strSource), LCase(strTmp))
    lTmpLoc = lTmp + Len(strTmp)
  Next I
  
  If I > nTags Then
    SkipNoTagUnit = lTmpLoc
  Else
    SkipNoTagUnit = 0             'There is no so much tags.
  End If
End Function

Public Function FindTagUnit(ByVal strSource As String, lLocation As Long, strMark As String) As String
  Dim lStart As Long
  Dim lLen As Long
  Dim lTmpLoc As Long
  Dim strTag As String
  
  lStart = lLocation
  lLen = Len(strSource)
    
  Do While lStart < lLen
    strTag = FindNextTagUnit(strSource, lStart, "<", ">")
    If strTag = "" Then
      FindTagUnit = ""
      Exit Function
    End If
    
    If strMark = "!--" And InStr(1, strTag, "!--") <> 0 Then
      FindTagUnit = strTag
      Exit Function
    End If
    
    If InStr(1, LCase(strTag), LCase("<" + strMark + ">")) > 0 Or _
       InStr(1, LCase(strTag), LCase("<" + strMark + " ")) > 0 Or _
       InStr(1, LCase(strTag), LCase("</" + strMark + ">")) > 0 Then
      FindTagUnit = strTag
      Exit Function
    Else
      lStart = InStr(lStart, strSource, strTag) + Len(strTag)
    End If
  Loop
  
  FindTagUnit = ""
End Function

Public Function FindStartTagUnit(ByVal strSource As String, lLocation As Long, strMark As String) As String
  Dim lStart As Long
  Dim lLen As Long
  Dim strTag As String
  
  lStart = lLocation
  If lStart = 0 Then lStart = 1
  lLen = Len(strSource)
  
  Do While lStart < lLen
    If strMark <> "" Then
      strTag = FindTagUnit(strSource, lStart, strMark)
    Else
      strTag = FindNextTagUnit(strSource, lStart, "<", ">")
    End If
    
    If strTag = "" Then
      FindStartTagUnit = ""
      Exit Function
    End If
    
    If Mid(strTag, 2, 1) <> "/" Then
      FindStartTagUnit = strTag
      Exit Function
    Else
      lStart = InStr(lStart, LCase(strSource), LCase(strTag)) + Len(strTag)
    End If
    
    DoEvents
  Loop
  
  FindStartTagUnit = ""
End Function
  
Public Function FindEndTagUnit(ByVal strSource As String, lLocation As Long, strMark As String) As String
  Dim lStart As Long
  Dim lLen As Long
  Dim strTag As String
  
  lStart = lLocation
  lLen = Len(strSource)
  
  Do While lStart < lLen
    If strMark <> "" Then
      strTag = FindTagUnit(strSource, lStart, strMark)
    Else
      strTag = FindNextTagUnit(strSource, lStart, "<", ">")
    End If
    
    If strTag = "" Then
      FindEndTagUnit = ""
      Exit Function
    End If
    
    If Mid(strTag, 2, 1) = "/" Then
      FindEndTagUnit = strTag
      Exit Function
    Else
      lStart = InStr(lStart, LCase(strSource), LCase(strTag)) + Len(strTag)
    End If
  Loop
  
  FindEndTagUnit = ""
End Function

Public Function PeekInfoBetweenTwins(ByVal strSource As String, lLocation As Long, strMark As String) As String
  Dim lTmpStart As Long
  Dim lTmpEnd As Long
  Dim strTmp As String
  
  strTmp = FindStartTagUnit(strSource, lLocation, strMark)
  If strTmp = "" Then
    PeekInfoBetweenTwins = ""
    Exit Function
  End If
  lTmpStart = InStr(lLocation, LCase(strSource), LCase(strTmp))
  lTmpStart = lTmpStart + Len(strTmp)
  
  strTmp = FindEndTagUnit(strSource, lTmpStart, strMark)
  If strTmp <> "" Then
    lTmpEnd = InStr(lTmpStart, LCase(strSource), LCase(strTmp))
    PeekInfoBetweenTwins = Mid(strSource, lTmpStart, lTmpEnd - lTmpStart)
  Else
    strTmp = FindStartTagUnit(strSource, lTmpStart, strMark)
    If strTmp <> "" Then        'only <p>, without </p>
      lTmpEnd = InStr(lTmpStart, LCase(strSource), LCase(strTmp))
      PeekInfoBetweenTwins = Mid(strSource, lTmpStart, lTmpEnd - lTmpStart)
    Else                        'get the last paragragh
      strTmp = FindNextTagUnit(strSource, lTmpStart, "<", ">")
      If strTmp <> "" Then
        lTmpEnd = InStr(lTmpStart, LCase(strSource), LCase(strTmp))
        PeekInfoBetweenTwins = Mid(strSource, lTmpStart, lTmpEnd - lTmpStart)
      Else
        PeekInfoBetweenTwins = ""
      End If
    End If
  End If
  PeekInfoBetweenTwins = Trim(PeekInfoBetweenTwins)
End Function

Public Function PeekAllBetweenTwins(ByVal strSource As String, lLocation As Long, strMark As String) As String
  'include start and end tags
  Dim lTmpStart As Long
  Dim lTmpEnd As Long
  Dim strTmp As String
  Dim strStartTag As String
  Dim strEndTag As String
  
  strTmp = FindStartTagUnit(strSource, lLocation, strMark)
  strStartTag = strTmp
  If strTmp = "" Then
    PeekAllBetweenTwins = ""
    Exit Function
  End If
  lTmpStart = InStr(lLocation, LCase(strSource), LCase(strTmp))
  lTmpStart = lTmpStart + Len(strTmp)
  
  strTmp = FindEndTagUnit(strSource, lTmpStart, strMark)
  strEndTag = strTmp
  If strTmp <> "" Then
    lTmpEnd = InStr(lTmpStart, LCase(strSource), LCase(strTmp))
    PeekAllBetweenTwins = strStartTag + Mid(strSource, lTmpStart, lTmpEnd - lTmpStart) + strEndTag
  Else
    PeekAllBetweenTwins = ""
  End If
  PeekAllBetweenTwins = Trim(PeekAllBetweenTwins)
End Function

Public Function GetHtmlHead(ByVal strSource As String) As String
  Dim strBorderMark As String
  Dim nTmp As Integer
  
  strBorderMark = vbCrLf + vbCrLf
  nTmp = InStr(1, LCase(strSource), LCase(strBorderMark))
  If nTmp > 500 Or nTmp = 0 Then
    GetHtmlHead = ""
  Else
    GetHtmlHead = Mid(strSource, 1, nTmp - 1)
  End If
End Function

Public Function GetHtmlContent(ByVal strSource As String) As String
  Dim strBorderMark As String
  Dim nTmp As Integer
  
  strBorderMark = vbCrLf + vbCrLf
  nTmp = InStr(1, strSource, strBorderMark)
  If nTmp > 500 Or nTmp = 0 Then
    GetHtmlContent = ""
  Else
    GetHtmlContent = Mid(strSource, nTmp + 4)
  End If
End Function

Public Function GetHtmlLength(ByVal strSource As String) As Long
  'strSource is all the data, include head and content.
  'sometimes there is no <html>, sometimes there several </html>
  'so the Function is not very valid!
  Dim lReal As Long
  Dim lHtmlStart As Long
  Dim lHtmlEnd As Long
  
  lReal = Len(GetHtmlContent(strSource))
  lHtmlStart = InStr(1, LCase(strSource), "<html>")
  lHtmlEnd = InStr(1, LCase(strSource), "</html>")
  
  If lHtmlStart > 0 And lHtmlEnd > lHtmlStart Then
    GetHtmlLength = lReal
  Else
    GetHtmlLength = 0
  End If
End Function

Public Function GetResponseHeadLength(ByVal strSource As String) As Integer
  Dim strTmp As String
  strTmp = GetHtmlHead(strSource)
  GetResponseHeadLength = Len(strTmp)
End Function

Public Function GetCurrentInfo(ByVal strSource As String, lLocation As Long) As String
  'Get information between ">" and "<", that is ">" Information "<"
  Dim lStart As Long
  Dim lEnd As Long
  Dim lTmp As Long
  Dim strTag As String
  
  lStart = lLocation
  If lStart < 1 Then lStart = 1
  lTmp = lStart
  
  Do While lTmp > 0
    If Mid(strSource, lTmp, 1) = ">" Then
      lStart = lTmp + 1
      Exit Do
    Else
      lTmp = lTmp - 1
    End If
  Loop
  
  strTag = FindNextTagUnit(strSource, lStart, "<", ">")
  If strTag <> "" Then
    lEnd = InStr(lStart, LCase(strSource), LCase(strTag))
    GetCurrentInfo = Mid(strSource, lStart, lEnd - lStart)
  Else
    GetCurrentInfo = Mid(strSource, lStart)
  End If
End Function

Public Function GetHttpFromTag(ByVal strTag As String) As String
  Dim strTmp As String
  Dim nTmp As Integer
  strTmp = strTag
  nTmp = InStr(1, LCase(strTmp), "http://")
  If nTmp > 0 Then
    nTmp = nTmp - 2
    strTmp = Mid(strTmp, nTmp)
    GetHttpFromTag = GetInsideString(strTmp, Chr(&H22))
  Else
    nTmp = InStr(1, LCase(strTmp), "href=")
    If nTmp > 0 Then
      nTmp = nTmp + 2
      strTmp = Mid(strTmp, nTmp)
      GetHttpFromTag = GetInsideString(strTmp, Chr(&H22))
    Else
      GetHttpFromTag = ""
    End If
  End If
End Function

Public Function DelAllTags(ByVal strSource As String, strMark As String) As String
  Dim strTmp As String
  Dim strTag As String
  Dim lStart As Long
  
  strTmp = strSource
  lStart = 1
  If LCase(strMark) = "style" Or LCase(strMark) = "script" Then
    strTag = PeekAllBetweenTwins(strTmp, lStart, strMark)
  Else
    If strMark <> "" Then
      strTag = FindTagUnit(strTmp, lStart, strMark)
    Else
      strTag = FindNextTagUnit(strTmp, lStart, "<", ">")
    End If
  End If
  
  Do While strTag <> ""
    lStart = InStr(1, strTmp, strTag)   'need not lcase or ucase
    strTmp = Mid(strTmp, 1, lStart - 1) + Mid(strTmp, lStart + Len(strTag))
    
    If LCase(strMark) = "style" Or LCase(strMark) = "script" Then
      strTag = PeekAllBetweenTwins(strTmp, lStart, strMark)
    Else
      If strMark <> "" Then
        strTag = FindTagUnit(strTmp, lStart, strMark)
      Else
        strTag = FindNextTagUnit(strTmp, lStart, "<", ">")
      End If
    End If
  Loop
  
  DelAllTags = strTmp
End Function

Public Function DelAllCrLf(ByVal strSource As String) As String
  Dim strTmp As String
  Dim lStart As Long
  
  strTmp = strSource
  
  strTmp = DelAllSubChars(strTmp, Chr(&HA))
  strTmp = DelAllSubChars(strTmp, Chr(&HD))
  
  DelAllCrLf = strTmp
End Function

Public Function GetCenterTitle(ByVal strSource As String) As String
  Dim strTmp As String
  Dim strTag As String
  Dim strTitle As String

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久久国产精品免费蜜臀| 蜜桃精品视频在线观看| 欧美一区二区三区免费观看视频| www.日韩av| 97精品国产露脸对白| 99精品国产99久久久久久白柏 | 欧美撒尿777hd撒尿| 成人激情校园春色| 成人av免费观看| 99国产精品久久久久久久久久| 9久草视频在线视频精品| 色婷婷精品大视频在线蜜桃视频| 色天天综合色天天久久| 欧美日韩高清在线| 欧美成va人片在线观看| 国产亚洲综合在线| 成人免费在线播放视频| 亚洲永久精品大片| 免费在线观看视频一区| 国产在线国偷精品产拍免费yy | 中文字幕日本不卡| 亚洲第一主播视频| 日韩av一级片| 国产精品一二二区| 色综合网站在线| 欧美日韩国产123区| 精品久久久久久亚洲综合网 | 亚洲乱码精品一二三四区日韩在线| 亚洲精品久久7777| 老鸭窝一区二区久久精品| 韩日欧美一区二区三区| 91免费版pro下载短视频| 欧美日韩国产中文| 国产午夜亚洲精品羞羞网站| 一区二区三区久久| 久久成人免费网| 色94色欧美sute亚洲线路一ni | 99视频在线精品| 日韩一区二区精品| 一区二区三区四区中文字幕| 精品一区二区三区久久久| 91视频在线观看| 久久夜色精品国产噜噜av| 亚洲综合色噜噜狠狠| 国产精品99久久久久久久女警| 欧美吻胸吃奶大尺度电影| 欧美v亚洲v综合ⅴ国产v| 一区二区三区蜜桃网| 国产成人精品亚洲午夜麻豆| 制服.丝袜.亚洲.另类.中文| 国产精品麻豆一区二区| 韩日av一区二区| 正在播放亚洲一区| 亚洲三级电影网站| 国产aⅴ综合色| 精品国产污网站| 天堂一区二区在线| 欧美性xxxxxxxx| 亚洲欧美日韩一区二区 | 久久婷婷国产综合国色天香| 亚洲影院久久精品| 99视频一区二区| 亚洲国产高清在线| 韩国精品主播一区二区在线观看 | 日韩免费高清电影| 午夜在线成人av| 91精品福利视频| 亚洲视频每日更新| 盗摄精品av一区二区三区| 久久久亚洲高清| 国产一区二区伦理片| 精品粉嫩aⅴ一区二区三区四区| 蜜臀久久久99精品久久久久久| 欧美二区三区的天堂| 亚洲444eee在线观看| 欧美精品一级二级| 日韩精品福利网| 欧美一级视频精品观看| 麻豆精品一二三| 久久久久久久久久电影| 成人免费看黄yyy456| 中文字幕第一区第二区| 色综合久久久久网| 亚洲综合清纯丝袜自拍| 538prom精品视频线放| 美美哒免费高清在线观看视频一区二区 | 欧美一级日韩免费不卡| 精品一区二区日韩| 日本一区二区成人| 色婷婷久久综合| 亚洲一区视频在线观看视频| 欧美剧在线免费观看网站| 人妖欧美一区二区| 欧美极品美女视频| 91在线观看地址| 亚洲大片精品永久免费| 日韩精品一区二区三区老鸭窝| 国产一区91精品张津瑜| 国产精品久久影院| 欧美私模裸体表演在线观看| 秋霞午夜av一区二区三区| 2020国产精品| 91福利视频在线| 麻豆国产欧美一区二区三区| 国产精品麻豆欧美日韩ww| 在线免费观看日本欧美| 久久精品av麻豆的观看方式| 中文字幕一区在线| 欧美精品粉嫩高潮一区二区| 久久 天天综合| 亚洲美女视频一区| 欧美一区二区三区视频免费 | 国产精品国产精品国产专区不蜜 | 中文字幕在线播放不卡一区| 欧美高清性hdvideosex| 成人国产在线观看| 青草国产精品久久久久久| 欧美激情一区三区| 91精品国产一区二区三区香蕉| 国产成人免费视频网站| 午夜久久久影院| 国产精品传媒视频| 久久亚洲欧美国产精品乐播| 欧美日韩不卡视频| 91在线播放网址| 国产mv日韩mv欧美| 久久se精品一区二区| 亚洲成a人片在线不卡一二三区| 国产目拍亚洲精品99久久精品| 在线成人av影院| 日本精品裸体写真集在线观看| 国产成人av电影在线观看| 免费xxxx性欧美18vr| 性做久久久久久免费观看| 亚洲图片另类小说| 欧美韩国一区二区| 国产视频一区在线观看| 日韩一级免费观看| 91精品国产一区二区三区蜜臀 | 久久一留热品黄| 欧美xxx久久| 日韩一区二区在线观看| 欧美日韩亚洲另类| 欧美撒尿777hd撒尿| 欧美性猛交一区二区三区精品| 91玉足脚交白嫩脚丫在线播放| 成人深夜视频在线观看| 成人av手机在线观看| 成人综合日日夜夜| 成人激情文学综合网| 成人激情动漫在线观看| 成人免费视频播放| 粉嫩在线一区二区三区视频| 国产精品一区2区| 国产suv一区二区三区88区| 国产精品77777竹菊影视小说| 国产精品18久久久久久久久久久久| 韩国精品一区二区| 成人手机在线视频| 色又黄又爽网站www久久| 欧美午夜精品一区二区三区 | 国内精品免费**视频| 国产精品影视网| 成人午夜电影网站| 日本道色综合久久| 欧美喷潮久久久xxxxx| 日韩欧美高清dvd碟片| 精品国产精品一区二区夜夜嗨| 久久色在线观看| 国产精品久久影院| 香蕉影视欧美成人| 国内不卡的二区三区中文字幕| 国产成人av网站| 91麻豆视频网站| 日韩一区二区在线看| 欧美国产一区二区| 亚洲狠狠爱一区二区三区| 日韩精品成人一区二区三区 | 91麻豆免费观看| 88在线观看91蜜桃国自产| 久久欧美一区二区| 亚洲综合色区另类av| 国产一区二区日韩精品| 色综合久久综合网欧美综合网 | 国产aⅴ综合色| 欧美影院一区二区三区| 欧美v日韩v国产v| 一区二区三区高清| 精品午夜一区二区三区在线观看| av在线播放成人| 日韩色在线观看| 亚洲欧美区自拍先锋| 久久国产精品露脸对白| 色婷婷激情一区二区三区| 精品黑人一区二区三区久久| 亚洲精品v日韩精品| 国产乱对白刺激视频不卡 | 另类小说色综合网站| 91丨porny丨户外露出| 久久在线观看免费|