欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

正则表达式小问题

程序员文章站 2022-04-14 22:11:55
...
字符串
$str = '[ol5FeByKjdWCdTRjZAuF] 1 @ 2012-06-19 20:46:44';
我想要获取
[ ] 内的内容
]和@之间的内容
@后面的内容
求教正则表达式怎么写……
学校里学的全还给老师了


回复讨论(解决方案)

print_r(preg_split('/[\[\]@]/', $str, -1, PREG_SPLIT_NO_EMPTY));

print_r(preg_split('/[\[\]@]/', $str, -1, PREG_SPLIT_NO_EMPTY));


我现在写成preg_match("/\[(.*?)\] (.*?) @ (\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}:\d{2})/",$str,$m);、
匹配的结果是
$m=Array ( [0] => [ol5FeByKjdWCdTRjZAuF] 1 @ 2012-06-19 20:46:44 [1] => ol5FeByKjdWCdTRjZAuF [2] => 1 [3] => 2012-06-19 20:46:44 )

怎样修改正则可以使当前结果中的第一项($m[0])去掉

修改正则做不到,你可以用array_shift() 函数将第一个元素删掉。

修改正则做不到,你可以用array_shift() 函数将第一个元素删掉。



算了,这都是小问题了,结贴