题目:匹配开头和结尾的字母相同的单词。
<?php
$str = "text theissj this mom boom heeh";
$patt = '/\b([a-z])\w+\1\b/'; //括号表示一个子表达式,\1表示重复第一个子表达式,有时可用$1代替
preg_match_all($patt, $str, $res);
var_dump($res);
?>
题目二:将手机号码加密:
$str = "18829283848 18283928392 15684849382";
$patt = '/(\d{3})\d{4}(\d{3})/';
$res = preg_replace($patt, '\1****\2', $str); // 这里的\1和\2分别表示$patt里的两个括号内的子表达式
var_dump($res);
运行结果: