gpt4 book ai didi

javascript - 如何匹配具有前导和尾随条件以及匹配组的字符串

转载 作者:行者123 更新时间:2023-11-29 10:07:51 26 4
gpt4 key购买 nike

我想匹配前面或后面没有其他引号的字符串 "$USER"。我可以对尾随引号使用负前瞻,但无法弄清楚如何实现负后视。使用此字符串:

'4' = "$NULL$" AND '3' = """$NULL$" AND '7' = """$NULL$"""

它应该只匹配第一个 "$NULL$"。这是我提出的正则表达式:

("\$NULL\$"|"\$KEY\$")(?!")

但它缺少回顾。

我看到很多答案建议用 replace 函数模仿负向后视,但我不明白如何用负向前视和捕获来完成这一点。

最佳答案

您可以使用捕获组并在替换模式中使用反向引用:

var regex = /(^|[^"])("\$NULL\$")(?!")/g;
var str = `'4' = "\$NULL\$" AND '3' = """\$NULL\$" AND '7' = """\$NULL\$"""`;
console.log(str.replace(regex, "$1[NEW_VAL]$2[/NEW_VAL]"));

详细信息

  • (^|[^"]) - 第 1 组(在替换模式中称为 $1)捕获字符串的开头 (^) 或 "
  • 以外的任何字符
  • ("\$NULL\$") - 第 2 组(从替换模式中称为 $2)捕获 "$NULL$"字符串
  • (?!") - 后面没有 "

关于javascript - 如何匹配具有前导和尾随条件以及匹配组的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39751894/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com