gpt4 book ai didi

javascript - "mentions"的正则表达式

转载 作者:行者123 更新时间:2023-11-28 13:18:56 25 4
gpt4 key购买 nike

我正在努力想出一个只能在单词开头找到 ampersat 的正则表达式。例如:

这里:@dog 去了公园。

但不是这里:d@og 去了公园。

或者在这里:The@dog 去了公园。

本质上,我只是想捕获正常的“提及”行为,同时忽略奇怪的边缘情况。我觉得这很常见,必须有一些完善的正则表达式来解决这个问题。

编辑:

我尝试过这个:

/(@\w+)/gi

但是,它捕获了我不希望获得的情况。

最佳答案

您可以使用以下正则表达式:

/\B@\w+/g

\B 在非单词边界匹配,因此,它要求非单词(或字符串开头)位于 @ 之前。

请参阅regex demo

var re = /\B@\w+/g; 
var str = 'The @dog went to the park.\nBut not here: The d@og went to the park.\nOr here: The@dog went to the park.';
var res = str.match(re);
document.body.innerHTML = "<pre>" + JSON.stringify(res, 0, 4) + "</pre>";

关于javascript - "mentions"的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35163365/

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