1. php的正则表达式 '/\b\w{2}\b/ '是什么意思
\w用于匹配字母,数字或下划线字符。
{n}匹配确定的 n 次。例如,‘o{2}’ 不能匹配 ‘Bob’ 中的 ‘o’,但是能匹配 ‘food’ 中的两个oo。
\b定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一。
比如表达式‘/\bst\b/’可以匹配‘stub’或‘best’,但不能匹配‘instry’。
所以/\b\w{2}\b/可以匹配任意以两个字母,数字或下划线字符为串头或串尾的串,比如'3com','a_b', 'never let'等,但不能匹配‘I hit u’或‘&abc%’
2. php正则匹配第一个结尾的
1, \D 匹配除十进制数字以外的任意数字
2, * 匹配0次、1次或多次其前的原子
3, + 匹配1次或多次其前的原子
4, ? 匹配0次或1次其前的原子
----------------------------------------------
5, \S 匹配除空白字符以外的任意一个字符
----------------------------------------------
6, \w 匹配任意一个数字、字母和下划线
----------------------------------------------
7, [] 1)用来表示范围。 2)匹配任意一个中括号中定义的原子
----------------------------------------------
8, [^] 表示匹配任意一个除中括号里面定义的原子
----------------------------------------------
9, {n} 表示其前的原子正好出现n次
----------------------------------------------
10, {n,} 表示其前的原子至少出现n次,最多不限制
----------------------------------------------
11, $ 匹配输入字符的结束位置
----------------------------------------------
12, \b 匹配词边界
----------------------------------------------
13, {m,n} 表示其前的原子最少出现m次,最多出现n次
----------------------------------------------
14, . 匹配除换行符(\n)以外的任意字符【windows下还匹配\f\r】
----------------------------------------------
15, | 两个或多个分支选择【优先级最低】
----------------------------------------------
16, ^ 匹配输入字符的开始位置
----------------------------------------------
17, \B 匹配非词边界
----------------------------------------------
18, () 1)模式单元,把多个小原子组成一个大原子。2)可以改变优先级
----------------------------------------------
3. PHP正则表达式匹配0个或多个指定的字符
proct-1349.html
是对应 test.php?action=proct&rid=1349
那
proct.html
的rid怎么办?为 空?
RewriteRule ^/?([a-zA-Z]{1,})(-([0-9]{1,}))?\.html$ test.php?action=$1&rid=$3
123456789