2010-07-27

[JavaScript]自定規則的正規表示式

最近在寫一支蠻特別的樣版維護程式,會有一些固定的變數名稱,當這些變數加到字串後,相關的檢核需要做一些檢核,因為這些變數都會被固定的符號包住,所以就想到利用正規表示式來處理了。


例1: "我是字串 \$Date_Str\$",我要找出"Date_Str"

正規表示式:需要找出"\$"開頭至"\$"結尾的字串
re = /\\\$(.*)\\\$/;

例2: "我是字串 |$Date_Str|",要找出"Date_Str"

正規表示式:需要找出"|$"開頭至"|"結尾的字串

re = /\|\$(.*)\|/;

註:感謝whatup大幫我指出錯誤,一開始試了蠻久都無法成功,原來是我的".*"這個沒有用"()"包起來

====== 2010/07/30 修改 ======
以上的方式還是有不少的問題,抓出來的字串仍然是有問題的

修正:

一串沒規則的字串裡找出用\$或是|$及|包起來的變數
可以使用
re = /[A-Z_]+([^\\\$\|]+)/g

沒有留言:

張貼留言