在包含完整字符串中的单词的@temp之前替换或删除字符

时间:2017-03-15 14:53:13

标签: javascript jquery python-2.7

在包含完整字符串中的单词

之前替换或删除@temp之前的字符

例如输出0020_B @ temp不应该来

下面是输入字符串

这可以在python或javascript中完成..两者都可以接受

"{
"name": "ProcessInfo",
"children": [
    {
        "name": "0020_B|Y",
        "children": [
            {
                "name": "0020_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0020_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0050_B|Y",
        "children": [
            {
                "name": "0050_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0050_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0030_B|Y",
        "children": [
            {
                "name": "0030_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0030_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0060_B|Y",
        "children": [
            {
                "name": "0060_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0060_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0040_B|Y",
        "children": [
            {
                "name": "0040_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0040_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    }
]
   }"

输出应该像

  "{
"name": "ProcessInfo",
"children": [
    {
        "name": "0020_B|Y",
        "children": [
            {
                "name": "CycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "TimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0050_B|Y",
        "children": [
            {
                "name": "CycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "TimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0030_B|Y",
        "children": [
            {
                "name": "CycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "TimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0060_B|Y",
        "children": [
            {
                "name": "CycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "TimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0040_B|Y",
        "children": [
            {
                "name": "CycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "TimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    }
]
   }"

2 个答案:

答案 0 :(得分:1)

您可以通过以下方式完成此操作......

<强>的JavaScript

  • 使用正则表达式 let input = `{ "name": "ProcessInfo", "children": [ { "name": "0020_B|Y", "children": [ { "name": "0020_B@tempCycleTimeAdherence|Y", "children": [ { "name": "0020_B@tempTimeOfDeviation_Percentage|Y" } ] } ] }, { "name": "0050_B|Y", "children": [ { "name": "0050_B@tempCycleTimeAdherence|Y", "children": [ { "name": "0050_B@tempTimeOfDeviation_Percentage|Y" } ] } ] }, { "name": "0030_B|Y", "children": [ { "name": "0030_B@tempCycleTimeAdherence|Y", "children": [ { "name": "0030_B@tempTimeOfDeviation_Percentage|Y" } ] } ] }, { "name": "0060_B|Y", "children": [ { "name": "0060_B@tempCycleTimeAdherence|Y", "children": [ { "name": "0060_B@tempTimeOfDeviation_Percentage|Y" } ] } ] }, { "name": "0040_B|Y", "children": [ { "name": "0040_B@tempCycleTimeAdherence|Y", "children": [ { "name": "0040_B@tempTimeOfDeviation_Percentage|Y" } ] } ] } ] }`; let output = input.replace(/[\w_]+@temp/g, ''); console.log(output);执行搜索,它会搜索临时的任何单词
  • 使用replace()函数替换该字词

&#13;
&#13;
import re

s = """{
"name": "ProcessInfo", "children": [
    {
        "name": "0020_B|Y",
        "children": [
            {
                "name": "0020_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0020_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0050_B|Y",
        "children": [
            {
                "name": "0050_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0050_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0030_B|Y",
        "children": [
            {
                "name": "0030_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0030_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0060_B|Y",
        "children": [
            {
                "name": "0060_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0060_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    },
    {
        "name": "0040_B|Y",
        "children": [
            {
                "name": "0040_B@tempCycleTimeAdherence|Y",
                "children": [
                    {
                        "name": "0040_B@tempTimeOfDeviation_Percentage|Y"
                    }
                ]
            }
        ]
    }
]
}
"""
r = r"[\w_]+@temp"
o = re.sub(r, '', s)
print(o)
&#13;
&#13;
&#13;

<强>的Python

lambda

答案 1 :(得分:0)

那么?那么问题是什么呢?一个简单的替换功能就足够了

https://www.w3schools.com/jsref/jsref_replace.asp

https://docs.python.org/2/library/string.html#string.replace