php正则:匹配(),{},[]小括号,大括号,中括号里面的内容
2024-10-14 21:57:44
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:都过了验证器的验证,验证器见参考资料。
最新文章
- SetEnvlfNoCase 记录从自己网站之外传来的请求
- 测试文档锁:doc.LockDocument()
- Mybatis Generator insert useGeneratedKeys keyProperty
- Phonegap项目中禁用WebViewBounce
- HDU 1525 Euclid&#39;s Game (博弈)
- MYSQL学习笔记3--mysql 2PC二阶段协义 与 日志闪回
- web.xml中的contextConfigLocation的作用
- PowerDesigner Mysql 主键自增、初始值、字符集
- 关于css浮动的一些总结
- php Smarty模板引擎配置与测试
- Mysql监控及优化
- iOS浏览器 new Date() 返回 NaN
- FormData中delete方法在ios不兼容
- 用sqlplus为oracle创建用户和表空间
- Swing使用Substance外观包异常问题
- [HDOJ]Coin Change(DP)
- LeetCode: Pascal&#39;s Triangle II 解题报告
- 4 伪ajax:jsonp、cors 跨域请求
- P4645 [COCI2006-2007 Contest#3] BICIKLI
- [CSS3] 动画暗角按钮
热门文章
- PHP比较运算!=和!==
- Codeforces Round #372 (Div. 2) A
- 【MySQL】MySQL的find_in_set的使用例子
- #使用while循环输入1 2 3 4 5 6 8 9 10
- 【leetcode❤python】 20. Valid Parentheses
- BZOJ 1488: [HNOI2009]图的同构 polay
- Python操作文件、文件夹、字符串
- 【转载】在Linux中使用VS Code编译调试C++项目
- JaveScript变量作用域说明
- github 修改fork的代码之后如何提交代码并pull request