【问题标题】:NotePad ++ Extract words inside []NotePad ++提取[]里面的单词
【发布时间】:2017-12-21 08:24:14
【问题描述】:

对于我当前的任务,我的 NotePad++ 文件中有如下 JSON 数据,

   "hits": {
      "total": 85,
      "max_score": 1,
      "hits": [
         {
            "_index": "mycluster",
            "_type": "subjectData",
            "_id": "24",
            "_score": 1,
            "fields": {
               "CaseA": [
                  "Personal and Culinary Services"
               ]
            }
         },
         {
            "_index": "mycluster",
            "_type": "subjectData",
            "_id": "30",
            "_score": 1,
            "fields": {
               "CaseA": [
                  "na"
               ]
            }
         },
         {
            "_index": "mycluster",
            "_type": "subjectData",
            "_id": "31",
            "_score": 1,
            "fields": {
               "CaseA": [
                  "Agriculture, Agriculture Operations, and Related Sciences"
               ]
            }
         }
      ]    
}

我需要从整个文件中单独提取 CaseA 值,

"CaseA": [
            "Personal and Culinary Services"
         ]

例如,“个人和烹饪服务”。

有没有办法做到这一点,"CaseA":[$1] ??

任何帮助/建议/想法都会很有用。

【问题讨论】:

    标签: notepad++


    【解决方案1】:

    Notepad++ 是解析 JSON 的一个特别糟糕的工具。 JSON 解析器会好得多,但我们可以尝试为此编写一个正则表达式:

    查找:

    (?:(?!"CaseA":).)*("CaseA":\s+\[[^\]]*\])
    

    替换:

    $1\n
    

    上述模式中的基本思想是消耗所有内容,直到我们点击文本 "CaseA": 的开头。此时,我们使用 捕获 CaseA 文本。在替换中,我们只使用您想要保留的文本。

    我没有在 Notepad++ 中测试过,但匹配在下面的演示中确实有效。

    Demo

    【讨论】:

      【解决方案2】:

      两步解决方案:

      第一步:

      • 搜索菜单 > 标记...
      • 查找:^\h*"CaseA": \[\R\K[^\]\n\r]+
      • 检查Mark lines
      • 全部查找

      第二步:

      • 搜索菜单 > 书签
      • 删除未标记的行

      给定示例的结果:

                    "Personal and Culinary Services"
                    "na"
                    "Agriculture, Agriculture Operations, and Related Sciences"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-02-03
        • 1970-01-01
        • 2015-11-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多