获取两个“ \ n”之间的字符串部分

时间:2019-02-18 16:16:54

标签: javascript regex

我有一个JSON标签作为字符串,其中包含多个结束行字符(\ n)。 我需要一个可以匹配它们之间所有字符串的正则表达式

String tag = "{ 

"key" = "value1"
"keyInd" = 2
"keyStopVal" = "(903, 3434 ,3434)"

}"

预期结果=“ key” =“ value1”,“ keyInd” = 2,“ keyStopVal” =“(903,3434,3434)”

正则表达式现在使用:

(\\n[\\s\\-\\w]+)?=([\\s\\w\\-\\.\\,\\$\\{\\[\\]\"]+)\\n

2 个答案:

答案 0 :(得分:1)

您可以使用此

/^[^=]+=[^\n]+$/gm

let str = `{ 

"key" = "value1"
"keyInd" = 2
"keyStopVal" = "(903, 3434 ,3434)"

}`

let op = str.match(/"[^=]+=[^\n]+$/gm)

console.log(op)
旁注::如果发布的数据应该是有效的JSON,则根本不需要正则表达式

答案 1 :(得分:0)

此正则表达式适用于您提供的字符串:

/".+"(.+)?=(.+)?"?.+"?\n/g

var tag = `{ 

"key"="value1"
"keyInd" = 2
"keyStopVal" = "(903, 3434 ,3434)"

}`

let results = tag.match(/".+"(.+)?=(.+)?"?.+"?\n/g)

console.log(results)