如何理解PHP正则表达式中$1、$2、$3......
2016-11-19 20:00
274 查看
今天看《PHP从入门到精通》的时候,遇到了一个例子:
上面的这个例子$1就是代表$string中的“粗体字”这三个字。
其实$1,$2,$3这类的术语和正则表达式中的反向引用有关,你可以用它们代表在你的正则表达式或者在要替换的字符串中的俘获组(或者是子模式,有()包裹的)。
举一个例子:
/*
* Replaces abcd123 with 123abcd, or asdf789 with 789asdf.
*
* The $1 here refers to the capture group ([a-z]+),
* and the $2 refers to the capture group ([0-9]+).
*/
preg_replace('/([a-z]+)([0-9]+)/', '$2$1', $str);
上面的这个例子$1就是代表$string中的“粗体字”这三个字。
其实$1,$2,$3这类的术语和正则表达式中的反向引用有关,你可以用它们代表在你的正则表达式或者在要替换的字符串中的俘获组(或者是子模式,有()包裹的)。
举一个例子:
/*
* Replaces abcd123 with 123abcd, or asdf789 with 789asdf.
*
* The $1 here refers to the capture group ([a-z]+),
* and the $2 refers to the capture group ([0-9]+).
*/
preg_replace('/([a-z]+)([0-9]+)/', '$2$1', $str);
相关文章推荐
- php中utf-8编码下用正则表达式如何匹配汉字
- php如何用正则表达式判断中文字符
- 如何在PHP中使用正则表达式进行查找替换
- 正则表达式如何在PHP里灵活的应用
- 掌握 PHP 中的正则表达式,第 2 部分: 如何在 PHP 中处理文本
- PHP正则表达式(汇总+理解+实用例子)
- php中utf-8编码下用正则表达式如何匹配汉字
- 如何在php中用正则表达式匹配utf-8…
- 正则表达式问题:如何理解/href\s*=\s*(?:"(?<1>[^"]*)"|(?<1>\S+))/(转载)
- 如何在 PHP 中使用正则表达式
- php编程如何中指定区别内容的正则表达式书写
- 如何在PHP中使用正则表达式(1)
- php正则表达式如何找到匹配模式中的最后一组
- 正则表达式如何在PHP里灵活的应用
- php中utf-8、gbk编码下用正则表达式如何匹配汉字[转]
- php里如何用正则表达式去除空白行
- 如何在PHP中使用正则表达式进行查找替换
- 浅谈PHP正则表达式的一点理解
- 如何正确理解正则表达式中的分隔符 \b
- php中utf-8编码下用正则表达式如何匹配汉字