正则表达式将自定义属性文件转换为json键值对表示

时间:2018-04-03 23:04:31

标签: regex

我有部分解决方案来转换此

USERNAME=CONSTANT[myUserName]
PASSWORD=CONSTANT[mypwd]

 "USERNAME":"myUserName",
 "PASSWORD":"mypwd"

我在这里看到了类似的解决方案  properties file to json。基本上我正在寻找零或多个空格1.)在密钥之前或之后的任何地方2.)在=符号之前和之后

  USERNAME  =      CONSTANT[myUserName]
    PASSWORD   =  CONSTANT[mypwd]

查找内容: (^[^ \t]+)(\s.*=\s*CONSTANT\[)(.*[^\n])(\])

替换: "$1":"$2",

 "USERNAME":"myUserName",
 "PASSWORD":"mypwd",

此外,我想确保为每一行执行此操作,有时它会匹配多行错误。我希望能找到适用于Windows的Eclipse的解决方案。

1 个答案:

答案 0 :(得分:1)

请务必使用^$,以避免正则表达式匹配多行。尝试这样的事情:

^\s*(\w+)\s*?\=\s*?\w+\[(\w+)\]$

替换为:

"$1":"$2",

演示:https://regex101.com/r/mxF8lI/1/