求一正则表达式

oyjqdlp364356378 2010-07-29 10:54:55
假如一文件中有包含以下

$actionMaps = array(
................,
................,
);

字符串,如何把该字符串匹配出来~``
...全文
97 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
phpboy 2010-07-29
  • 打赏
  • 举报
回复

$str = '
$actionMaps = array(
................,
................,
);
';

preg_match('/\$actionmaps.*?\);/is', $str, $match);

print_r($match);
Dleno 2010-07-29
  • 打赏
  • 举报
回复

$str='
$a="432435";
$actionMaps = array(
0=>array(
0=>"123",
"a"=>"abc",
),
1=>array(
0=>"123",
"a"=>"abc",
),
);
//gfdgfdgdfgd
$actionMaps1 = array(
0=>"123",
"a"=>"abc",
);
$fsfs=54353;
//543535
';
preg_match_all('~(\$[a-zA-z0-9_]+\s?=\s?array\([^;]*?\);)~is',$str,$data);
print_r($data[0]);
amani11 2010-07-29
  • 打赏
  • 举报
回复
代码最好多一些,这种方法,数组中间如果内容如果有字符串);就完蛋了


如果字符串符合php语法,可以考虑include这个文件,然后将数组打印出来


$str = 'asdfas^……
$actionMaps = array(
................,
................,
);
^!@#@!#!
';
echo preg_match_all('/\$actionMaps = array\((.*?)\);/is', $str, $match);

print_r($match[0]);

CunningBoy 2010-07-29
  • 打赏
  • 举报
回复
<?php
$subject = file_get_contents('yourfilename');
preg_match_all('/\$actionMaps = array\(.*\);/is', $subject, $matches);
print_r($matches);
?>
oyjqdlp364356378 2010-07-29
  • 打赏
  • 举报
回复
没人先顶顶~`
oyjqdlp364356378 2010-07-29
  • 打赏
  • 举报
回复

$actionMaps = array(

'list' => 'ListAction',
'view' => 'ViewAction',
...,

);


相当于就是把array里面的数据提取出来~`
oyjqdlp364356378 2010-07-29
  • 打赏
  • 举报
回复
里面的....不是.是省略符号~```

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧