regex - 在 json 中获取令牌的正则表达式是什么?
问题描述
我尝试在 json 中获取令牌以将其放入 Bearer 令牌中以运行 jmeter,但它没有得到我想要的正确内容。
Json 喜欢这个:
{"access_token":"xxxxxxxxxxxxxxxx","token_type":.......}
我只想得到xxxxxxxxxx。
我尝试使用常规:\"access_token":"([^\:]*)\"
,但它返回“ access_token”:“xxxxxxxxxxxxxxxx ”。
请帮助我获得正确的正则表达式。谢谢。
解决方案
正则表达式是错误的工作工具!您已经有了 JSON - 使用 JSON 解析器更有意义。但是,如果您坚持使用正则表达式,则以下内容应该有效:"access_token":"([^"]*)"
此正则表达式找到access_token
密钥,然后捕获直到第一次关闭的所有数据"
。请注意,如果"
出现在被捕获的数据中,这将中断。另请注意,"
不需要在正则表达式中转义(但由于您使用的语言可能需要转义)。
推荐阅读
- ruby - 比较两个范围/数组时如何返回匹配项和非匹配项
- java - 读取文件的 Java 代码未在 VS 代码编辑器上编译
- php - 终端中的php openssl库未加载错误
- java - 如何使用对象类型作为方法/构造函数的参数?
- asp.net-core - ASP.NET Core 共享 Cookie 问题
- google-apps-script - 如何在 Gsheet 单元格上显示来自 Google Drive 的图像?
- sql - 如何基于标识列在sql中增量创建项目ID
- powershell - Windows 事件查看器 xPath 查询不适用于某些字符串。转义字符?
- macos - 在 Mac 上的终端输出上搜索文本(不使用终结器)
- javascript - 无法设置未定义的已选中(保存带有 localStorage 的复选框)