学习正则帮手笨狼正则练习器
2014-08-12来源:易贤网

<HTML>

<HEAD>

<TITLE>笨狼正则练习器_www.jb51.net脚本之家 </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>

更多信息请查看IT技术专栏

推荐信息