4 个回答

利用先行和后发断言规则: (?<=").*?(?=")
最近总结了一篇关于正则表达式的博文,题主不妨一读:《正则表达式基础》

测试代码如下:

$subject = '123"abc"456';
$pattern = '/(?<=").*?(?=")/';

preg_match($pattern, $subject, $result);
var_dump($result);

结果截图如下:

请输入图片描述

"(.*?)"获取组里的内容,再取出组中的值!通用的解决办法有的语言不支持断言!

\"(.*)\"

匹配组里就是你要的东西

其实没看懂描述,按题目字面意思来理解的话,可以用下面这种办法取出来。

var pattern = /\"(.*)\"/;
var testStr = '1234"abas"daf';
var result = testStr.match(pattern);
console.log(result[1]); // = abas
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Microsoft
子站问答
访问
宣传栏