常见的一些奇怪的符号
^ 表示行开始
$ 表示结束
\s 表示空格
举个梨汁 从@aleen a,哈哈哈@lucifer 哈@lucifer a 中取出 @xxx a @ 开头 中间若干字母 一个或多个空格 a 结尾
首先正常匹配出 @aleen a
php
$str = "@aleen a,哈哈哈@lucifer 哈@lucifer a";
$mach = "/@\w+\sa/";
preg_match_all($mach,$str,$res);
var_export($res);
输出结果 array ( 0 => array ( 0 => '@aleen a', 1 => '@lucifer a', ), )
js
var str = "@aleen a,哈哈哈@lucifer 哈@lucifer a";
var pattern = /@\w+\sa/g;
var res = str.match(pattern);
console.log(res);
输出结果 ["@aleen a", "@lucifer a"]
再说一下()
php
$str = "@aleen a,哈哈哈@lucifer 哈@lucifer a";
$mach = "/@(\w+\sa)/";
preg_match_all($mach,$str,$res);
var_export($res);
输出结果
array ( 0 => array ( 0 => '@aleen a', 1 => '@lucifer a', ), 1 => array ( 0 => 'aleen a', 1 => 'lucifer a', ), )
js
var str = "@aleen a,哈哈哈@lucifer 哈@lucifer a";
var pattern = /@(\w+\sa)/g;
var res = pattern.exec(str);
console.log(res);
var res = pattern.exec(str);
console.log(res);
输出结果
["@aleen a", "aleen a", index: 0, input: "@aleen a,哈哈哈@lucifer 哈@lucifer a"]
["@lucifer a", "lucifer a", index: 23, input: "@aleen a,哈哈哈@lucifer 哈@lucifer a"]
然后我们发现他会额外返回()中的内容,所以我们猜一下
网友评论