JavaScript 正则表达式只选择最后一次出现

标签 javascript regex regex-negation regex-lookarounds

只选择最后一次出现

我正在尝试选择最后一个单词(直到空格),它们位于最后一个 white space@ 字符之后。

以下是我的字符串

hello hi @why helo @blow but @name             // capture: name
hello hi @why helo @blow but name@name         // capture: blow

和另一个字符串

@blow but not know how to resolve this         // capture: blow

这里最后一次出现的是第一个单词 blow,仅选择单词后的 @(显然空格不在第一个单词中)。

我试过这个:https://regex101.com/r/pG1kU1/1

最佳答案

最简单的答案:

/\B@[^@]\w*(?!.*?\s@)/

参见 DEMO

关于JavaScript 正则表达式只选择最后一次出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30567458/

相关文章:

javascript - 用于输入类型编号的 Angular 8 验证器

javascript - 在 Javascript 中使用相对路径设置 Google map 图标

javascript - DocumentHistoriesController# 中的 ActionController::UnknownFormat 和 format.js

python - 有没有办法删除字符串中重复和连续的单词/短语?

印度银行帐号的正则表达式

正则表达式对组中的单词进行否定检查

javascript - Codemirror的Onload功能

regex - 警告 : nonstandard use of escape in a string literal

Javascript 正则表达式否定后视

Python 正则表达式不匹配 http ://