這次帶什麼樣的正規表示式可以顯示highlight高亮,怎麼用正規表示式可以顯示highlight高亮?正規表示式顯示highlight高亮的注意事項有哪些,以下就是實戰案例,一起來看一下。
程式設計師在編寫程式碼的時候少不了和字串以及「查詢」打交道,兩者的交集中有一個叫做正規表示式的東西,這傢伙用好了可以提高程式效率,用不好的話...你可以先去好好學一學。
關於正規的使用,舉個簡單的例子:
var m = location.href.match(/(\w+:)\/{0,3}([^\/]+)(?:(\/[^\?#]*))?(?:(\?[^#]+|.+))?(?:(#.*))?/); var res = { protocol: m[1], host: m[2], path: m[3], search: m[4], hash: m[5] }; console.log(res);
憋了幾分鐘= =||,我也覺得這個正則不是特別好理解(紅黑相間了,應該稍微清楚),有些朋友可能不知道(?:content)是什麼意思,還有類似(?!content)和(?=content)分組和前瞻的知識,建議去問度哥和穀娘。
一. 正規應用小DEMO範例
下面是一串隨手寫的程式碼,放在textarea中:
/*** @author barret lee* @date 2013-10-06* @email barret.china@gmail.com*/ //outer varvar a = "this id outer string"; //closurefunction b() { //inner var var a = "this is inner string"; var g = a.replace(/this is inner string/g, function() { return new Function("/*clousure*/this.a")(); }); /** * @description closure - regExp test * @author barret lee */ function c() { return { a: a, g: g } } return c;} var s = b()(); //s.a, s.g
正則匹配,處理上面那堆字串的小DEMO:
/*** @author barret lee* @date 2013-10-06* @email barret.china@gmail.com*/ //outer varvar a = "this id outer string"; //closurefunction b() { //inner var var a = "this is inner string"; var g = a.replace(/this is inner string/g, function() { return new Function("/*clousure*/this.a")(); }); /** * @description closure - regExp test * @author barret lee */ function c() { return { a: a, g: g } } return c;} var s = b()(); //s.a, s.g
類似很多的前端模板,artTemplate,baiduTemplate等都是對正規表示式的絕倫應用,很值得去看看源碼,好好鑽研人家都考慮了那些容易出錯的點,原始碼都不長,兩三百行。了解一個大概比較容易,但是當自己動手的時候總會發現很多細節問題處理不好,我那上面幾個正則就倒弄了半天= =
正則表達式,用起來還是挺方便的。正規技能,你值得擁有~
相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
相關閱讀:
怎麼實作springmvc接收jquery提交的陣列後續擷取資料
以上是什麼樣的正規表示式可以顯示highlight高亮的詳細內容。更多資訊請關注PHP中文網其他相關文章!