regex - 从引号之间提取文本并添加第二个单词
问题描述
我需要提取Gate中排除引号的文本,还需要包含 null 作为另一个匹配的单词。
# "gate":"A11","terminal":"5"
# "gate":508B,"terminal":"2"
# "gate":"D8","terminal":"1"
# "gate":null,"terminal":null
# desired output:
# A11, 508B, D8, null
我试过这样的事情:"gate":(.*?),"terminal":.*
,但这将包括引号。另外,我尝试通过尝试排除引号"gate":"([^"]*)","terminal":.*
,但我不知道匹配“null”。
有人可以帮忙吗?
解决方案
这应该给你你想要的,至少对于你提到的例子:
"gate":"?([^"]+|null)"?,"terminal":"?([^"]+|null)"?
注意:如果字符串可以包含转义引号,则基于正则表达式的解决方案不太可能。
推荐阅读
- java - 找不到常见的超类 - Proguard
- intellij-idea - 在 IntelliJ IDEA 中的终端选项卡之间切换
- c# - 如何在 .NET Core 应用程序的 dll 被覆盖时停止关闭?
- angularjs - HTTP 状态 406 - 不可接受 Spring mvc
- mongodb - 这个 mongo 查询有什么问题?
- javascript - 如何在highcharts中获得相对于十字线的轴值
- raspbian - 在 Raspbian 上安装 GNU 收音机
- mysql - 如何解决实体框架打开 DataReader 问题
- java - where are the #list looped variables in Netbeans wizard freemarker
- node.js - AWS CodePipeline 将错误的 JobId 传递给 Lambda(nodejs)