php正则:匹配(),{},[]小括号,大括号,中括号里面的内容

比如有一段字符:

$s='60c8

{"code":"200","message":"success","data":[{"_id":"780521","time":1476768196,"position":{"long":108.90415,"lat":35.25623},"speed":495.677952,"anum":"B6552","atype":"A321","atypename":"Airbus A321-231","angle":"198","vspeed":"-576","device":"9d26b827eb566225","onground":"0","updatetime":1476768198,"height":3581.4,"fnum":"CSN3722 ","alert":"0","spi":"0","squawk":"1107","emergency":"0"}]}';

  

我要匹配,{}括号里面的内容,单独拿出来。

 preg_match('/(?:\{)(.*)(?:\})/i', $s, $match);
var_dump($match);

  

说明:

PHP使用正则表达式提取字符串中尖括号<>、小括号()、中括号[]、大括号{}中的字符示例,需要的朋友可以参考下

$str="你好<我>(爱)[北京]{天安门}";
echo f1($str); //返回你好
echo f2($str); //返回我
echo f3($str); //返回爱
echo f4($str); //返回北京
echo f5($str); //返回天安门
function f1($str)
{
$result = array();
preg_match_all("/^(.*)(?:<)/i",$str, $result);
return $result[1][0];
} function f2($str)
{
$result = array();
preg_match_all("/(?:<)(.*)(?:>)/i",$str, $result);
return $result[1][0];
}
function f3($str)
{
$result = array();
preg_match_all("/(?:\()(.*)(?:\))/i",$str, $result);
return $result[1][0];
}
function f4($str)
{
$result = array();
preg_match_all("/(?:\[)(.*)(?:\])/i",$str, $result);
return $result[1][0];
}
function f5($str)
{
$result = array();
preg_match_all("/(?:\{)(.*)(?:\})/i",$str, $result);
return $result[1][0];
}

PS: (?:字符) 表示不捕获这个字符。貌似PHP不支持将字符换成括号。 
否则的话可以将环视给嵌套进去,就可以循环匹配了。 
PS2:环视:(?!) (?=) (?<!) (?<=) 
有小于号的在右侧匹配,没有的在左侧匹配。感叹号表示不等,等于号表示相等。 
PS3:都过了验证器的验证,验证器见参考资料。

最新文章

  1. SetEnvlfNoCase 记录从自己网站之外传来的请求
  2. 测试文档锁:doc.LockDocument()
  3. Mybatis Generator insert useGeneratedKeys keyProperty
  4. Phonegap项目中禁用WebViewBounce
  5. HDU 1525 Euclid&#39;s Game (博弈)
  6. MYSQL学习笔记3--mysql 2PC二阶段协义 与 日志闪回
  7. web.xml中的contextConfigLocation的作用
  8. PowerDesigner Mysql 主键自增、初始值、字符集
  9. 关于css浮动的一些总结
  10. php Smarty模板引擎配置与测试
  11. Mysql监控及优化
  12. iOS浏览器 new Date() 返回 NaN
  13. FormData中delete方法在ios不兼容
  14. 用sqlplus为oracle创建用户和表空间
  15. Swing使用Substance外观包异常问题
  16. [HDOJ]Coin Change(DP)
  17. LeetCode: Pascal&#39;s Triangle II 解题报告
  18. 4 伪ajax:jsonp、cors 跨域请求
  19. P4645 [COCI2006-2007 Contest#3] BICIKLI
  20. [CSS3] 动画暗角按钮

热门文章

  1. PHP比较运算!=和!==
  2. Codeforces Round #372 (Div. 2) A
  3. 【MySQL】MySQL的find_in_set的使用例子
  4. #使用while循环输入1 2 3 4 5 6 8 9 10
  5. 【leetcode❤python】 20. Valid Parentheses
  6. BZOJ 1488: [HNOI2009]图的同构 polay
  7. Python操作文件、文件夹、字符串
  8. 【转载】在Linux中使用VS Code编译调试C++项目
  9. JaveScript变量作用域说明
  10. github 修改fork的代码之后如何提交代码并pull request