首页>>老刘专栏
什么是正则表达式?
什么是元字符?
正则表达式的元字符:
[]
^
()
$
+
?
.
*
|
\
!
1. []
– 这个中括号用来匹配其内部的任何一个单字符,例如:
[a]
=> 匹配一个单字符,它是小写字母a.[ab]
=> 匹配一个单字符,它是小写字母a或者b.[aB]
=> 匹配一个单字符,它是小写字母a或者大写字母B.[1B]
=> 匹配一个单字符,它是数字1或者大写字母B.[Dog]
=> 匹配一个单字符:它是大写字母D,小写字母o或者小写字母g。[123b]
=> 匹配一个单字符:它是数字1, 2, 3或小写字母g.[1-3]
=> 匹配一个单字符,它是数字1, 2或者3。[0-9]
=> 匹配一个单字符,它是一个数字。[a-d]
=> 匹配一个单字符,它是小写字母a, b, c或者d。[a-z]
=> 匹配一个单字符,它是一个小写字母。[A-Z]
=> 匹配一个单字符,它是一个大写字母。[home.php]
=> 匹配一个单字符,它是小写字母h,小写字母o,小写字母m,小写字母e,特殊字符.,小写字母p,小写字母h或者小写字母p。
2. ^ – 又叫“脱字符”,用来表示一段正则表达式的开始,例如:
^Colou?r
=> 匹配一个样本,该样本以Color或者Colour起头。^Nov(ember)?
=> 匹配一个样本,该样本以Nov或者November起头。^elearning*\.html
=> 匹配一个样本,该样本以elearning.html起头。^\.php
=> 匹配一个样本,该样本以任意php文件起头。^product-price\.php
=> 匹配一个样本,该样本以product-price.php起头。
脱字符跟随向右开口的中括号表示否定,例如:
[^a]
=> 匹配一个单字符,只要它不是小写字母a。[^B]
=> 匹配一个单字符,只要它不是大写字母B。[^1]
=> 匹配一个单字符,只要它是它不是数字1。[^ab]
=> 匹配一个单字符,只要它不是小写字母a或b。[^aB]
=> 匹配一个单字符,只要它不是小写字母a或大写字母B。[^1B]
=> 匹配一个单字符,只要它不是数字1或者大写字母B。[^Dog]
=> 匹配一个单字符,只要它不是大写字母D,小写字母o或者小写字母g。[^123b]
=> 匹配一个单字符,只要它是它不是数字1,2,3或者小写字母b。[^1-3]
=> 匹配一个单字符,只要它不是数字1,2或3。[^0-9]
=> 匹配一个单字符,只要它不是数字。[^a-z]
=> 匹配一个单字符,只要它不是小写字母。[^A-Z]
=> 匹配一个单字符,只要它不是大写字母。
3. ()
– 圆括号用来匹配字符串,例如:
(a)
=> 匹配字符串a。(ab)
=> 匹配字符串ab。(dog)
=> 匹配字符串dog。(dog123)
=> 匹配字符串dog123。(0-9)
=> 匹配字符串0-9。(A-Z)
=> 匹配字符串A-Z。(a-z)
=> 匹配字符串a-z。(123dog588)
=> 匹配字符串123dog588。
注意:()
还被用来创造和储存变量。如:^(.*)$
4. $
– 用来标记一则表达式或者是一行的完结,例如:
Colou?r$
=> 匹配一个样本,该样本以Color或者Colour结尾。Nov(ember)?$
=> 匹配一个样本,该样本以Nov或者November结尾。elearning*\.html$
=> 匹配一个样本,该样本以elearning.html结尾。*\.php$
=> 匹配一个样本,该样本以任意php文件结尾。product-price\.php$
=> 匹配一个样本,该样本以product-price.php结尾。
5. +
– 一次或多次匹配前面的子字符,例如:
[a]+
=> 一次或多次匹配小写字母a。[dog]+
=> 一次或者多次匹配小写字母d,o,或者g。[548]+
=> 一次或者多次匹配数字5,4或者8。[0-9]+
=> 一次或多次匹配数字。[a-z]+
=> 一次或多次匹配小写字母。[^a-z]+
=> 一次或者多次匹配非小写字母。[a-zA-z]+
=> 匹配任意的大小写字母组合。[^9]+
=> 一次或者多次匹配非9的字符。
6. ?
– 零次或一次匹配前面的字符,例如:
[a]?+
=> 零次或一次匹配小写字母a。[dog]?
=> 零次或者一次匹配小写字母d,o,或者g。[^dog]?
=> 零次或者一次匹配非小写字母d,o或者g。[0-9]?
=> 零次或多次匹配数字。[^a-z]?
=> 零次或多次匹配小写字母。
注意:在正则表达式中使用?
表示之前的字母或者字母组可有可无。例如:正则表达式^colou?r$
同时匹配color和colour。相似地,正则表达式^Nov(ember)28th?$
匹配:nov 28,november 28,Nov 28th和November 28th。
7. .
– 匹配非行尾的单字符,例如:
8. *
– 以任意次数(包括0次)匹配前面的字符,例如:
9. |
– 表明逻辑或,例如:
10. \
– 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用,或一个八进制转义符,例如:
11.!
– 表明逻辑非。但不像^(脱字符),它只在规则和条件的开头使用。例如:
(!abc)
=> 匹配非字符串abc。[!0-9]
=> 匹配非数字的单字符。[!a-z]
=> 匹配非小写字母的单字符。
一些正则表达式
^(*\.html)$
=> 匹配.html前任意个数的字符并将其存入变量。^dog$
=> 匹配字符串dog。^a+$
=> 一次或多次匹配小写字母a。^(abc)+$
=> 一次或多次匹配字符串abc。^[a-z]+$
=> 一次或多次匹配小写字母。^(abc)*$
=> 以任意次数匹配字符串abc。^a*$
=> 以任意次数匹配小写字母a。
问:
问:
mod_rewrite
重写URL
重定向URL
解决正则URL问题
解决热链接问题
制作定制的403和404页面
基于IP地址提交内容,益处无穷
配置指令类型
RewriteEngine
RewriteOptions
RewriteLog
RewriteLogLevel
RewriteLock
RewriteMap
RewriteBase
RewriteRule
RewriteCond
RewriteEngine
语法:RewriteEngine on/off 默认值:RewriteEngine off
Options +FollowSymLinks RewriteEngine on
RewriteRule
语法:Rewrite <pattern> <substitution> [FLAGS]
[R]
=> 重定向。默认值为302。可以被赋予从300到400的任意数值,例如:RewriteRule ^index\.html$/index.php [r=301]
[F]
=> 禁止。经常与连字符-
一起使用。这个连字符告诉服务器不要进行任何替代。这个信号告诉服务器不要完成请求,同时返还一条403代码。例如:RewriteRule ^product-price\.php$ -[F]
[NC]
=> 它告诉服务器在匹配样本时无视大小写。例如:RewriteRule ^him*\.php$[nc]
[QSA]
=> 追加请求字符串(Query String Append)。它告诉服务器将字符串从旧的URL传递到新的。[L]
=> 最后规则。这个标签告诉服务器不要再处理更多的规则了。[OR]
=> 逻辑或。这个标签用于RewriteCond声明中的逻辑或。
RewriteCond
语法:
简单文本
RewriteRule后方引用
RewriteCond后方引用
服务器变量
Rewrite ^(.*)$/index.php/$1 [L]
RewriteCond %{HTTP_HOST} ^(123\.42\.162\.7)$ RewriteCond %1 ^123\.42\.162\.7$ RewriteRule .........
语法: % {Variable_Name}
%{HTTP_HOST}
=> 这个变量给出服务器信息以及其IP地址。%{HTTP_USER_AGENT}
=> 这个变量给出用户操作系统和浏览器信息。%{QUERY_STRING}
=> 这个变量返回查询字符串。%{HTTP_REFERRER}
=> 这个变量返回来源的URL。%{REMOTE_ADDR}
=> 这个变量返回来源的IP地址。
实例
实例一
RewriteRule ^media/$/media.html [r=301,l]
实例二
RewriteRule ^oldaddress\.html$/newaddress.html [r=301,l]
实例三
Redirect 301 http://www.anotherwebsite.com
实例四
RewriteCond %{REMOTE_ADDR} ^12\.34\.56\.78$ RewriteRule ^product-prices\.html$/sorry.html -[F]
实例五
RewriteCond %{REQUEST_URL} ^index\.html$ RewriteRule ^(.*)$ http://www.abc.com/$1 [r=301,l]
实例六
RewriteCond %{REMOTE_ADDR} ^12\.34\.56\.78$ RewriteRule ^sales-demo/$ /sorry.html -[F]
实例七
RewriteCond %{REMOTE_ADDR} ^12\.34\.56\.78$ RewriteRule ^.*$/ -[F]
.htaccess
Options +FollowSymLinks RewriteEngine on
- 上一篇: 新网站短期运营的几个误区
- 下一篇: 【科普】使您了解百度包年出价究竟是怎么做的。
猜你喜欢
- 2024-02-23 提高小红书运营效率的6个工具
- 2022-11-10 【官方文档】百度搜索网站被黑防范指南
- 2022-11-03 【干货必备】百度搜索优质内容指南
- 2022-08-01 百度隐藏“快照”功能:原因未知-百度快照没了?
- 2022-06-20 浅析“百度搜索基础信息设置规范”!
- 2022-06-15 SEO尴尬,有排名,没流量,没咨询,怎么办?
- 搜索
-
- 2024-04-07 小红书+抖音+直播常见违禁词及替换方法
- 2024-03-14 刷量成风,广告主损失惨重?该被重视了!
- 2024-03-06 代理投的好,还需要招自己的优化师吗?
- 2024-02-23 提高小红书运营效率的6个工具
- 2024-02-23 千川投放百宝书:2万字详解,一篇全掌握!
- 2024-02-20 年后求职15个关键面试问题,助优化师脱颖···
- 2024-01-31 不行就去做销售吧!
- 2024-01-09 合格的优化师,需具备这6项思维能力!
- 2023-12-28 25个金句文案句式,直接套!
- 2023-12-05 做私域必备的10个朋友圈黄金模板
- 2023-12-05 15个爆款短视频文案技巧,看完立马用!
- 2023-11-27 浅析:《百度搜索优质内容解读》,当下百度···
- 2019-11-01 Origin DNS error:使用百···
- 2020-06-20 “401 - 未授权: 由于凭据无效,访···
- 2020-12-01 一级域名好还是二级域名好?
- 2020-10-13 百度抓取诊断工具一直抓取失败怎么办?
- 2019-12-09 域名解析后,网站返回状态码511应对方法
- 2020-04-10 百度下拉框怎么刷?刷百度下拉框软件原理及···
- 2019-08-12 网站出现“403,服务器上文件或目录拒绝···
- 2021-04-13 html/txt文件中文用浏览器打开有乱···
- 2021-01-06 百度移动端的搜索结果上线“踩顶”功能,对···
- 2020-09-03 element.style样式的修改
- 2019-11-06 正确打开.db数据库文件的两种方式,避免···
- 2020-10-20 UC神马搜索怎么做快速排名优化
- 2021-02-25 干货!一文教你如何提高百度爱采购店铺排名···
- 2019-09-09 具体应用中,robots.txt和nof···
- 2019-12-11 香港等服务器添加白名单操作流程指引
- 2019-02-15 用js修改网站标题对SEO有何影响?
- 2021-03-28 图片间多余空白怎么解决,6种cssj简单···
- 2022-04-23 现阶段百度SEO,还能抢救一下?
- 2023-05-30 百度推广账户这3个问题,如何应对?
- 2024-01-31 不行就去做销售吧!
- 2020-06-22 降权/被K后的如何快速补救?
- 2019-03-31 这些SEO认知误区你需要规避
- 2022-10-31 Unknown robot是什么蜘蛛?怎···
- 2023-07-14 小预算SEM账户,如何快速搭建物料?
- 热门标签
-
- 401错误
- 401未授权
- 语义效应
- 话术技巧
- 百度
- 谷歌
- pagerank算法
- 算法原理
- tab切换
- 选项卡滑动切换
- 达克效应
- 认知局限
- 交流分享
- webp转GIF
- webp格式转GIF动图
- webp to gif
- 锚定效应
- 百度快排
- 快速排名
- SEO快排
- 万词霸屏
- SEO优化
- 按天计费系统
- 搜索推广模式对比
- SEO快速排名
- SEO优化师
- seo工资
- 合肥seo
- seo公司
- 合肥优化公司
- 选择seo公司
- 互联网黑话
- 2019it黑话
- 网站被k
- 收录消失
- 百度熊掌号
- 网页劫持
- 灰色样式
- 百度公告
- seo外包
- 外包公司
- seo职业发展
- seo计费系统
- FTP
- ftp隐藏文件
- seo改版
- 网站改版周期
- 301重定向
- 首选域名
- 301跳转
- spider爬虫
- 在家办公
- 伪静态
- 纯静态
- seo友好度
- seo前景
- seo发展
- 2019冬至
- 冬至
- 企业主
- 中文搜索
- 头条搜索
- 中文搜索引擎起源和发展
- 网站改版
- seo部署
- seo内容
- 优质内容
- 头条权重
- 私域流量
- seo高手
- seo套路
- seo误区
- 百度算法
- 算法更新
- 网站排名波动
- 网站惩罚
- 百度小程序
- 小程序
- 友情链接
- 被惩罚链接
- seo策略
- seo平衡
- seo和可访问性
- 黑帽SEO
- 刷快排
- seoer
- 提升seo价值
- 屏蔽右键
- 禁止右键
- 禁止查看源代码
- 重复内容
- 重复页面
- 内啡肽
- seo习惯
- seo专家
- seo思维塑造
- 互联网名词
- it专属名词
- 360算法