.at
可以匹配cat sat mat #at
点可以匹配任意字符

[a-z]at
[a-zA-Z]
方括号中匹配一个集合类

[^a-z]
表示不属于该集合里的字符

*表示可以被重复0次或更多次
+表示可以被重复1次或更多次

[[:alnum:]]+
表示至少有一个字母字符

()
圆括号用于分割子表达式
(very )*large
可以匹配 very large、very very large、large

{}
花括号表示允许重复的次数
{3}表示重复3次,{2,4}表示重复2~4次,{2,}表示至少重复2次

^bob
表示在字符串开始处匹配bob

com$
表示在字符串结尾处匹配com

^[a-zA-Z]$
表示只匹配一个字母字符的字符串

用竖线来表示分支选择
com|edu|net
表示匹配com或edu或net

匹配特殊字符时,需要使用反斜杠\来进行转义,在PHP中还需要再进行转义一次。

匹配电子邮件地址
^[a-zA-Z0-9_\-.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-.]+$

正则查找字符串
ereg(string pattern, string search, array [matches]);
eregi不区分大小写

正则替换字符串
string ereg_replace(string pattern, string replacement, string search);

正则分割字符串
array split(string pattern, string search [, int max]);