前后端分離之fiddler前端開發代理 autoresponder 正則表達式 regex:(?insx) 修正符詳解


regex:(?isx)^http://127.0.0.1:3000(/dlscene)?/order/(\w*)

http://127.0.0.1:8080/dlscene/order/$2

上面這段正則既可以匹配

http://127.0.0.1::3000/dlscene/order/xx

也可以匹配

http://127.0.0.1::3000/order/xx

實在是非常好用

 

2018.3.22更新一個自己用的正則


 

 

在前端開發中經常會用到的fiddler,來做接口調試。

在使用autoresponder時,其中的正則表達式無疑是最便捷的方式。

其中regex:(?insx)這部分一直讓我很疑惑,其中的關鍵字表示什么意思。

今天花時間查了一下,專門寫一寫。

 

REGEX: 表示啟用正則表達式,(?insx) 設置正則解釋的規則, 忽略大小寫等。

括號中這幾個應該叫做 “修正符”(php中),

修正符:i 表示不區分大小寫的匹配;

修正符:n 表示指定的唯一有效的捕獲是顯式命名或編號的形式。也就是說如果使用了“n”修正符,想在表達式中使用括號,在下面使用變量接受是收不到的。

例如期望匹配值為:http://127.0.0.1:8020/abba/lyb/lyblist

表達式為:

regex:(?inx)^http://127.0.0.1:\d*/(\w*)/lyb/lyblist

下面如果想用變量接收括號中內容是收不到的。

http://127.0.0.1:8080/$1/lyb/lyblist

 這樣輸出的結果是 “http://127.0.0.1:8080/$1/lyb/lyblist” ,而不是期望的“http://127.0.0.1:8080/abba/lyb/lyblist”

 

 修正符:s 表示將字符串視為單行,換行符作為普通字符;

修正符:x 表示將模式中的空白忽略。

 

 

另外還有(當然這是php里面的,博主不保證在fiddler中是否有效 XD ):

 //修正符:g表示全局匹配

//修正符:m 將字符串視為多行,不管是那行都能匹配;

//修正符:A 強制從目標字符串開頭匹配;

//修正符:D 如果使用$限制結尾字符,則不允許結尾有換行;

//修正符D限制其不可有換行;必需以abc結尾;

//修正符:U 只匹配最近的一個字符串;不重復匹配;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM