regex 如何在正则表达式中按条件添加符号?

bgtovc5b  于 2023-01-31  发布在  其他
关注(0)|答案(1)|浏览(103)

如果在正则表达式中找到的数字小于10,我需要添加0
我的表情:

  • 搜索字符串:"createdAt":\s+\[\s+([0-9]+),\s+([0-9]+),\s+([0-9]+),\s+([0-9]+),\s+([0-9]+),\s+([0-9]+)\s+]
  • 替换:"createdAt": "($1)-($2)-($3)T($4):($5):($6)"
  • 结果:

输入数据:

"createdAt": [
            2022,
            4,
            15,
            13,
            43,
            7
          ]

预期输出数据:

"createdAt":"2022-04-15T13:43:07"

实际输出数据(4(04除外)和7(07除外)):

"createdAt":"2022-4-15T13:43:7"

--
那么,在这种情况下如何添加条件呢?

ru9i0ody

ru9i0ody1#

如果您可以操作数组:

const json = {
  "createdAt": [
    2022,
    4,
    15,
    13,
    43,
    7
  ]
}

const formattedJson = json.createdAt.map((n) => n.toString().padStart(2, 0))

console.log(formattedJson);

或者对日期字符串使用regex:

const date = "2022-4-15T13:43:7"
const formattedDate = date.replace(/\b(\d)\b/g, '0$1')

console.log(formattedDate);

相关问题