js怎么匹配中间内容?

作者站长头像
站长
· 阅读数 10

原文如:

json={abcded sdlsdkg,sdjwep2ofds99xz},fkewjson={abcded sdlsdkg,sdjwep2ofds99xz}
json={abcded sdlsdkg,ff}fk
json={abcded 121123}
json={abcded sdlsdkg,sdjwep2ofds99xz}ewjwjson={abcded sdlsdkg,sdjwep2ofds99xz}

用 js 怎么匹配出所有 {} 之内的内容呢?谢谢

返回数组即可

回复
1个回答
avatar
test
2024-07-13
// 第一种方法
let str = 'json={abcded sdlsdkg,sdjwep2ofds99xz},fkewjson={abcded sdlsdkg,sdjwep2ofds99xz}'
let arr = [], startIndex = 0
for (let i = 0; i < str.length; i++) {
    if (str[i] === '{') {
        startIndex = i
    } else if (str[i] === '}') {
        arr.push(str.slice(startIndex + 1, i))
    }
}
console.log(arr)

// 第二种方法
let str = 'json={abcded sdlsdkg,sdjwep2ofds99xz},fkewjson={abcded sdlsdkg,sdjwep2ofds99xz}'
let arr = []
str.replace(/{(.*?)}/g, function(matchStr,groups){
    arr.push(groups)
})
console.log(arr)
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容