首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

求教PHP正则匹配有关问题

2013-09-10 
求教PHP正则匹配问题各位大虾,我是一个编程爱好者,初学PHP,遇到一个正则表达式匹配问题,百思不得解,特来求

求教PHP正则匹配问题
各位大虾,我是一个编程爱好者,初学PHP,遇到一个正则表达式匹配问题,百思不得解,特来求教。
我的代码如下:
<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<title>第一个PHP网页</title>
</head>
<body>
<pre>
<?php
$str = "akk c";
$pattern="/(.)\1/";
echo preg_match($pattern,$str,$matches)."<br>";
var_dump($matches);
?>
</pre>
</body>
</html>

按说要能匹配“kk”,但输出结果却是:
0
array (size=0)
  empty

谢谢!

另:我的环境配置是:
服务器版本: 5.6.12-log - MySQL Community Server (GPL)
Apache/2.4.4 (Win64) PHP/5.4.12
php , 正则表达式
[解决办法]
你要匹配kk的话



$str = "akk c";
$pattern="/k+/";
echo preg_match($pattern,$str,$matches)."<br>";
var_dump($matches);


[解决办法]
或这样



$str = "akk c";
$pattern="/(.)\\1/";
echo preg_match($pattern,$str,$matches)."<br>";
var_dump($matches);


[解决办法]
写正则时最好用单引号,双引号会处理很多转义,所以要加很多\
比如,\1会被认为是\x01,必须写成\\1才能正确处理

热点排行