我已经用谷歌搜索并浏览了堆栈溢出问答,但没有找到这个确切的场景。我有一个像这样的对象:
props: {
"label": "1rem",
"text3": "1rem",
"text2Button": "1rem",
"1": "1rem",
"5spacing": 2
}
我正在使用此正则表达式模式来捕获对象属性名称并根据simplified version of another answer删除双引号。 :
/"([^"]+)":/g
这很好用,但我希望数字保留双引号,所以我将其更改为:
/"([^"0-9]+)":/g
但是,这仅匹配 "label"
并且任何带有数字的属性都会被排除。我明白为什么会发生这种情况,我不明白的是如何匹配其中包含数字的属性,但排除那些以数字开头的属性。
所需的正则表达式模式将仅匹配 "label"
、"text3"
和 "text2Button"
,以便我可以转换对此表示反对:
props: {
label: "1rem",
text3: "1rem",
text2Button: "1rem",
"1": "1rem",
"5spacing": 2
}
(我无法弄清楚如何将排除 ^
与字符串 ^
的开头结合起来。我也无法弄清楚添加 |
运算符,或者如果这是正确的方法。)
最佳答案
关于javascript - 从对象属性中删除双引号,除非以数字开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58380179/