正则表达式@字边界中的字符

regular expression @ character in word boundary

我正在尝试从 string

中提取以 @ 开头的单词

我使用 word boundary 创建了一个简单的 regex。但是当我尝试查找以 @ 字符开头的匹配词时,它没有找到匹配项。我试图用 \ 转义字符,但没有使用它。有人请帮助我

const str='@alice wants to meet @bob'
console.log(str.match(/(\b@\S+\b)/ig))

以上代码returnsnull

听起来您想确保 @ 和前一个字符之间的位置 不是 单词边界(因为单词边界表示前一个字符是一个单词字符) - 这可以与 \B 匹配,它在任何地方都匹配 \b 而不是:

const str='@alice wants to meet @bob foo@bar'
console.log(str.match(/\B@\S+\b/ig))