我用谷歌搜索并完成了堆栈溢出问答,但没有找到这个确切的场景。我有一个像这样的对象:
props: {
"label": "1rem",
"text3": "1rem",
"text2Button": "1rem",
"1": "1rem",
"5spacing": 2
}
我正在使用此正则表达式模式来捕获对象属性名称并根据另一个答案的简化版本删除双引号:
/"([^"]+)":/g
这很好用,但我希望数字保留双引号,所以我将其更改为:
/"([^"0-9]+)":/g
但是,这仅匹配"label"
,并且任何带有数字的属性都被排除在外。我理解为什么会发生这种情况,但我不知道如何匹配其中包含数字但排除以数字开头的属性。
所需的正则表达式模式将匹配"label"
, "text3"
, 并且"text2Button"
只有这样我才能将对象转换为:
props: {
label: "1rem",
text3: "1rem",
text2Button: "1rem",
"1": "1rem",
"5spacing": 2
}
(我不知道如何将 exclude^
与 string 的开头结合起来^
。我也不知道添加|
运算符的正确位置,或者这是否是正确的方法。)