gpt4 book ai didi

javascript - 正则表达式匹配字符的所有实例,除非后跟数字或它本身

转载 作者:行者123 更新时间:2023-11-29 17:39:49 27 4
gpt4 key购买 nike

尝试匹配 @ 的每个实例,除非后跟 digit 或在 js 中单独出现。

@(?!\d) 查找所有后跟 digit

1@ @1 1 j@ @j @j1 1j@ j1 1j @@1 @ <-- 不想自己匹配


Regex demo

有什么想法吗?谢谢

最佳答案

您想删除任何未包含空格且后跟数字的 @。最简单的方法是匹配并捕获用空格括起来的 @ 并匹配所有其他未跟数字的 @ ,并替换为第 1 组占位符 $1 :

s.replace(/((?:^|\s)@)(?!\S)|@(?!\d)/g, '$1')

参见 regex demo

详情

  • ((?:^|\s)@)(?!\S) - 第 1 组:字符串开头或空格 ((?:^|\s)) 然后是 @,后面没有跟一个非空白字符 ((?!\S),等于 (?=\s |$),空格或字符串结尾)
  • | - 或者
  • @(?!\d) - @ 后面没有数字((?!\d) 是一个否定的前瞻如果在当前位置的右边有一个数字,则匹配失败)

关于javascript - 正则表达式匹配字符的所有实例,除非后跟数字或它本身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53801133/

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