正则表达式入门指南
1. 使子表达式可选
在正则表达式里,“可选”意味着某元素允许出现一次,但并非必需。例如,对于 <HR>
标签,若要让 SIZE
属性可选,可使用 !?
符号。由于可选部分不止一个字符,所以需用括号将其括起来,得到 !(...)?"
。插入到表达式中,就变成了 <HR( +SIZE += +[0 - 9]+)? +>
。
这里要注意,结尾的 +
放在 !(...)?"
之外,这样能匹配像 <HR >
这样的情况。若把它放在括号内,那么只有当 SIZE
部分存在时,结尾的空格才会被允许。同样, SIZE
前的 +
包含在括号内,如果放在括号外,即便 SIZE
部分不存在, HR
后面也必须有空格,这会导致 <HR>
无法匹配。
以下是量词“重复元字符”的总结表格:
| 最小次数 | 最大次数 | 尝试所需 | 含义 |
| — | — | — | — |
| 无 | 1 | 允许一个;无需(“一个可选”) | ?
|
| 无 | 无限制 | 允许无限制;无需(“任意数量均可”) | +
|
|