首页 > 编程 > HTML > 正文

学习正则帮手笨狼正则练习器

2020-01-25 19:40:24
字体:
来源:转载
供稿:网友
把下面的文件保存为hta文件,运行即可
 
<HTML> 
<HEAD> 
<TITLE>笨狼正则练习器_www.vevb.com武林网 </TITLE> 
<style> 
body  

    font-size:12; 
    BACKGROUND: #DADADA; 
    margin-left:20; 


#blockORG 


    font-family:Verdana; 
    font-size:12px;     
    overflow:scroll; 
    height:300; 


#fileORG 

    width:400; 

#blockReg 

    font-family:Verdana; 
    font-size:12px; 
}     
#showMe 
{     
    font-family:Verdana; 
    font-size:12px;     
    height:200; 
    overflow:visible; 
}     
#replaceVar 
{     
    font-family:Verdana; 
    font-size:12px; 
    top:341;     

#isScriptDIV 

    position:absolute;     
    top:361;     
    overflow-x:visible;     


</style> 
</HEAD> 

<BODY> 
<INPUT type="file" id="fileORG" onchange = "vbs:showORG"/> 
<button  onclick = "vbs:showORG" >载入</button> 
<input type="checkbox" id="Imode" checked />忽略大小写 
<input type="checkbox" id="Gmode" checked />全局  
<button  onclick = "vbs:back" >清空</button> 
<button  onclick = "vbs:saveFile" >保存</button><br/> 
<textArea id="blockORG"></textArea><br/> 
表达式:<input id="blockReg" /><br/> 
替换为:<input id="replaceVar" /><input type="hidden" id="jsvalue" /> 
<div id="isScriptDIV"> 
    <button  id="normal" onclick="vbs:gogogo">普通替换</button> 
    <button  id="isVBS" onclick="vbs:gogogo" >vbs表达式替换</button> 
    <button  id="isJS"  onclick="vbs:gogogo">js表达式替换</button> 
</div> 
<textArea id="showMe" ></textArea> 
<SCRIPT LANGUAGE="vbScript">  
'设置窗体尺寸 
    window.resizeTo window.screen.availWidth,window.screen.availHeight  
    window.moveTo 0,0   
    blockORG.style.width = cint(window.screen.availWidth * 0.94) 
    blockReg.style.width = px2Int(blockORG.style.width )-100 

    replaceVar.style.width = px2Int(blockReg.style.width)-400     

    isScriptDIV.style.left =   px2Int(replaceVar.style.width) +100 
    showMe.style.width = blockORG.style.width 

    dim fso ,Re  
    set Re = new RegExp  
    set fso = createObject("Scripting.FileSystemObject") 
    dim replaceStr 

    dim thisFileDir'定义本文件绝对路径 
    dim thisFileName'定义本文件名 
    dim thisFileFolder'定义本文件夹路径     

    thisFileDir = replace(window.location.href,"file:///","") 
    thisFileDir = unescape(replace(thisFileDir,"/","/"))      
    thisFileName = LastOne(thisFileDir,"/")     
    thisFileFolder=getFolderDir(thisFileDir) 

sub showORG() 
'在文本框内加载文件     
dim f,ts,s 
    if fso.FileExists(fileORG.value)  then         
        set f = fso.GetFile(fileORG.value) 
        set ts = f.OpenAsTextStream(1) 
        s="" 
        if not ts.AtEndOfStream then             
            s = ts.ReadAll  
        end if 
        ts.Close      
        blockORG.value = s             
    end if             
end sub 

Function LastOne(Str,splitStr) 
'输入字符和分隔符,得到最后一部分 
    LastOne = right(Str,len(Str)-InStrRev(Str,splitStr)) 
End Function 

function getFolderDir(fullDir) 
'输入得到全路径,得到文件夹路径 
    s=LastOne(fullDir,"/") 
    getFolderDir = left(fullDir,len(fullDir)-len(s)) 
end function 

function px2Int(px) 
    px2Int = cint(replace(px,"px","")) 
end function  

sub gogogo()     
    Re.IgnoreCase = Imode.checked 
    Re.Global =   Gmode.checked 
    Re.Pattern = blockReg.value 
    replaceStr = replaceVar.value 
    select case window.event.srcElement.id     
    case "isVBS" 
        replaceStr = eval(replaceStr) 
    case "isJS"      
        window.execScript "jsvalue.value=eval(replaceVar.value);","javaScript"  
        replaceStr = jsvalue.value     
    end select 
    showMe.value = Re.Replace(blockORG.value,replaceStr) 
end sub 

sub back 
    showMe.value = "" 
end sub 

sub saveFile         
    if fso.FileExists(fileORG.value)  then         
        set f = fso.GetFile(fileORG.value) 
        f.copy fileORG.value & makeRand() & ".bak"'创建备份 
        set ts = f.OpenAsTextStream(2) 
        ts.write showMe.value 
        ts.Close 
        blockORG.value = showMe.value     
    else 
        set ts = fso.OpenTextFile(thisFileFolder & makeRand() & ".txt",2,true) 
        ts.write showMe.value 
        ts.Close 
        blockORG.value = showMe.value 
    end if     
end sub 

function makeRand() 
    dim resault 
    resault = mid(cstr(now()),3) 
    resault =replace(resault,":","") 
    resault =replace(resault,"-","") 
    resault =replace(resault," ","") 
    makeRand = resault 
end function 

</SCRIPT> 
</BODY> 
</HTML> 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表