關於正規表示式替換的乙個想法 常識

2021-10-02 12:57:32 字數 920 閱讀 1667

前幾天在配置 nginx ,的subs_filter這個模組,這個模組的作用就是可以將網頁返回的內容進行替換

subs_filter "資料"

"hello world" r;

比如上訴**可以將原來網頁中包含資料都替換為hello world, 最後的r表示 是正則匹配,也就是第乙個引數可以寫正則匹配

然後我遇到了乙個問題:

我替換的內容是不確定的,只知道是乙個鏈結,但是我不可能將整個鏈結的正則都寫出來,畢竟鏈結的url太多變化了,我想到了可以通過限制頭尾部來匹配對應的內容

限制頭尾相同,那麼就可以將頭部尾部在匹配的正則和替換成內容的裡面將頭尾都寫一遍

例如:

subs_filter "資料.*?結果"

"資料hello world結果" r;

以上就可以將資料***x結果替換成資料hello world結果

同樣原理替換url 也可以,不需要知道url的正則怎麼寫, 頭和尾部限定就好了

由於寫python習慣用re.findall習慣將要匹配的打組,以為這樣就會只替換括號中的內容

subs_filter "資料(.*?)"

"hello world" r;

這種語法是錯誤的,nginx的subs_filter沒有這種語法

之所以寫這篇文章,因為我當時陷入邏輯坑中了,總是想如果 正則裡面如果寫了頭部和尾部,但是頭部和尾部根本不是我想要的怎麼辦,不寫頭部和尾部就不能取到我要匹配的內容,但是後來突然想到了,不需要改變的內容只要在替換的裡面重新寫一遍就好了,非常簡單

關於正規表示式替換的乙個想法 常識

前幾天在配置 nginx 的subs filter這個模組,這個模組的作用就是可以將網頁返回的內容進行替換 subs filter 資料 hello world r 比如上訴 可以將原來網頁中包含資料都替換為hello world,最後的r表示 是正則匹配,也就是第乙個引數可以寫正則匹配 然後我遇到...

正規表示式替換

正規表示式替換 每行的資料格式為 vcbi zuuu 001a465 kakid legos 要求變為格式為 vcbizuuu001 a465 kakid legos 替換掉第一部分和第二部分中間的空格,第二部分和第三部分中間的空格,其他的保持乙個空格 string originalstring v...

正規表示式 替換

正規表示式 替換 正規表示式 符合一定規則的而表示式.作用 用於專門操作字串。特點 用於一些特定的符號來表示一些 操作。這樣就簡化書寫。所以學習正規表示式 好處 可以簡化對字串的複雜操作。弊端 符號定義越多,正則越長,閱讀性越差 具體操作功能 1,匹配 string matches 方法.用規則整個...