我正在研究一个我无法破解的正则表达式问题。我有一个字符串列表,看起来像这样:
"Some Leading Words, "ind": "ind1", "primary":true, some more words, "ind": "ind2", "primary":false"
我想撤回主要指标。在这种情况下,那将是ind1
。这可以通过以下方式完成:
\bind\b(.*?)"primary":true
或者至少这个接近......我仍然有“ind”和“primary:true”部分,但我实际上是在使用VBScript正则表达式5.5库在Excel中执行此操作,因此我可以{{1} } {,RIGHT
,LEFT
和MID
我知道我不想包含的内容。
我遇到的麻烦是主要指标在字符串中排在第二位。
SEARCH
在这一篇文章中,我最终得到了第一个"Some Leading Words, "ind": "ind1", "primary":false, some more words, "ind": "ind2", "primary":true
和ind
之间的所有内容,这比我想要的更多。
(仅供参考:我从NPI API site解析JSON,如果上下文有帮助,需要返回每个医生的主要分类法。)
答案 0 :(得分:1)
所以,这是一个想法。在"primary":true
之前加上逗号,然后将点.
更改为允许除逗号外的任何内容的字符类。
\bind\b([^,]*?), "primary":true
那会给你你想要的东西。
但是,如果你不想要额外的东西和你的价值,你可以使用这样的东西:
\bind\b": "([^,]*?)", "primary":true