关于正则表达式在线测试工具的开发总结
附:此次進行正則表達式在線測試工具(一下簡稱“正則測試工具”)的開發,源于爬山虎工作室的編程實訓作業。開發工具:subline text。
(一)正則測試工具功能:
輸入正則表達式和待測試的語句,提交后,由后臺進行匹配判斷,然后輸出判斷結果(包括單元匹配結果)。
(二)工作界面如下,
正確測試結果界面:
(三)開發過程學習到的知識:
(1)PHP支持兩種類庫的正則表達式:PCRE 和 POSIX 庫。其中,PCRE庫支持比較全面,執行效率較高;而POSIX庫,自 PHP 5.3.0起,POSIX 正則表達式擴展被廢棄。因此PCRE前景較好,此次也只使用PCRE。
附注:兩者的功能以及函數等區別具體請查看昨晚寫的博文《posix和perl標準的正則表達式區別》
(2)此次正則測試工具的開發也是第一次使用JSON進行開發的實踐;使用了JQuery庫中的ajax函數進行數據傳遞和處理。
(四)開發中遇到的最大問題:
在開發的過程中,ajax的函數參數中預期服務器返回數據類型dataType必須寫明為“json”;否則js在解析傳遞回來的數據時,將會把返回的數據當成responseText或者responseText進行解析。出現的情況是無法按照預期進行處理,例如下面代碼,在這里,將無法輸出匹配次數。
$.ajax({
type:"GET",
url:"regular.php",
//省略掉 dataType: "json",
data:{
regtext:reg,
inputtext:input
},
success:function(data,textStatus){
if(data.times==0){
addHtml("#error","<P>您所輸入的測試語句與正則表達式不符。請重新輸入</P>");
}else{
//假如能夠匹配,輸出提示和匹配次數。
alert("匹配次數為:"+data.times+"次。"); //無法輸出匹配次數。
//生成匹配所有匹配行的數據:
//如果有其他的單元匹配,則生成單元匹配內容:
}
}
})
(五)總結
經過這一次動手操作,才意識到知識學習必須通過動手練習才能掌握。當初學習正則表達式的時候,沒有做足練習,導致現在實際應用時暴露諸多問題,例如細節出現難以覺察的錯誤。
總結
以上是生活随笔為你收集整理的关于正则表达式在线测试工具的开发总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SAP Spartacus Unit L
- 下一篇: SAP Spartacus Unit L