$str = "昨天 @测试 hiaaaa dd@测试 反反复复";
$reg = "/([^@]+(?=\s))/";
$arr = preg_split($reg,$str,-1,PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY );
print_r($arr);
结果是
Array ( [0] => 昨天 [1] => @ [2] => 测试 [3] => hiaaaa [4] => dd@ [5] => 测试 [6] => 反反复复 ) 想要的结果是Array ( [0] => 昨天 @ [1] => 测试 [2] => hiaaaa dd@ [3] => 测试 [4] => 反反复复 ) 求教该如何修改正则?==============
其实就是想把类似于微博里边@功能用正则来拆出@的人,规则是"@开头+人名+空格"不如此的话 有没有其他更好的实现方法?如果用这个 类似于
$str = "昨天 @测试 hiaaaa dd@测试 反反复复@好友2";
这样在末尾@了好友,但是没有空格能否用正则判断?正则表达式
解决方案 »
- 这样一个查询的PHP语句该怎么写出来?输出每天的日期和记录数
- smarty 使用自定义函数
- php5.3.3 无php_mssql.dll怎办,又不能用5.2的
- 使用phpmyadmin后发现 php配置貌似有问题?
- 使用Php或是wordpress程序做一个搜索框
- 帮我推荐几本学习PHP比较好的书吧
- 密码:必须且只含有数字和字母,6-10位。正则表达式怎么写?
- php 如何实现asp 的application 对象! 还有如何统计同时在线人数?
- 我这个session为什么不能传递参数?
- 2k,apache配置php,为什么不能加载mssql库,而gd库则没问题?急
- 急.....数字重组计算问题
- 关于字符集的问题:phpmyadmin和ipad显示都是乱码
$reg = "/(@\S+)/";
$arr = preg_split($reg,$str,-1,PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY );
print_r($arr);Array
(
[0] => 昨天
[1] => @测试
[2] => hiaaaa dd
[3] => @测试
[4] => 反反复复
[5] => @好友2
)