国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 優化推廣 > 正文

如何編寫網站改版正則規則

2024-04-26 13:55:55
字體:
來源:轉載
供稿:網友

規則由2部分組成:舊網址的正則表達式、新網址的正則表達式。
正則標準說明:支持PCRE規范的表達式。
以下舉例說明:
改版前url:example.com/bbs123/?a=2&b=137
改版后url:bbs123.yoursite.com/thread-137-2.html
針對這一類長相的url改版
首先使用正則描述改版前舊url規則:^example/.com/([a-z0-9]+)//?a=([0-9]+)&b=([0-9]+)$
再用字符串和捕獲引用描述改版后新url規則: /1.yoursite.com/thread-/3-/2.html
注:其中/為轉義字符,其后可以跟隨數字0-9以表示一個對捕獲字符串的引用,或者跟隨另一個以表示一個字符’’,其余字符皆不可以跟隨在一個單獨的/之后。其余字符都表示他們自身。
提交以上正則規則后,如改版前url
example.com/bbs123/?a=2&b=137
會匹配這條規則,并產生如下的捕獲對應關系
bbs123 => /1
2 => /2
137 => /3
進而得到最終的改版后url長相為
bbs123.yoursite.com/thread-137-2.html
請注意如下的url將不在本規則覆蓋范圍內:
example.com/BBS123/?a=2&b=137
原因:規則配置的第一個捕獲中指定可通配[a-z0-9]但未包括大寫字母
example.com/bbs123/?a=&b=137
原因:規則配置的第二個捕獲指定+匹配至少要有一個字符
example.com/bbs123/?a=2&b=137&c=45
原因:規則最后指定$表示斷言url應該到此結束,否則不匹配
附PCRE規則常用字符,更多可到標準庫中進行了解。
^:表示字符串開始,即在此之前不能再有任何字符
$:表示字符串結束,即在此之后不能再有任何字符
?:表示之前的元素可以出現0次或1次
*:表示之前的元素可以出現0次或多次
+:表示之前的元素可以出現1次或多次
{數字}:表示之前的元素必須出現數字次
{數字,}:表示之前的元素需要出現至少數字次
{數字1,數字1}:表示之前的元素出現次數不少于在數字1且不大于數字2
[一些字符]:表示一個在一些字符內的字符,一些字符部分可以用-進行簡記,例如[abcde]等同于[a-e]
.:表示一個任意字符
/:轉義字符,當上面有特殊含義的字符以及/本身需要表示其字面值而非特殊含義時,可以用特殊字符表示這個特殊字符本身,例如?表示一個?而非/出現0次或一次。轉義字符還可以和一些非特殊字符使用,表示一個特殊含義,見后續的描述
/d:表示一個數字[0-9]
/w:表示一個單詞[a-zA-Z0-9_]
(子模式):一般?和*等計數字符只對前一個元素生效,當需要對一個子模式生效時,需要加上括號。同時,括號內子模式所匹配的字符串,會作為捕獲存在,后續可以引用,計數方式為“從左至右每一個加括號的子模式依次被編號為捕獲1、2、3、4等”。整個規則本身匹配部分也是一個捕獲,記為0號捕獲
|:表示之前的子模式和之后的子模式至少有一個匹配,例如a(bc|de)f可以匹配adef和abcf

來源:seo優化網 轉載注明出處!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 资讯 | 万州区| 天祝| 象州县| 罗江县| 称多县| 磐安县| 屏东县| 嘉祥县| 景德镇市| 禹城市| 通渭县| 松阳县| 阳信县| 广宁县| 六枝特区| 邹城市| 津南区| 南通市| 克什克腾旗| 卢龙县| 红安县| 商都县| 阳信县| 柘城县| 皋兰县| 丰镇市| 旅游| 朝阳市| 图木舒克市| 青阳县| 耒阳市| 旬阳县| 湄潭县| 邻水| 时尚| 文安县| 双鸭山市| 若尔盖县| 青铜峡市| 教育|