Javascript 将css类包装为Hashtag(#)内容&;At(@)内容

Javascript 将css类包装为Hashtag(#)内容&;At(@)内容,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在寻找一种jQuery方法来查找所有的hashtag(#)和at(@),其内容后跟。最后用css类包装它们 类包装以“#”或“@”开头,在下面的任何白色字母前结束。句子中有多个#和@ *{ 字体系列:无衬线; } .在{ 背景色:#ffcccb; 颜色:#bf2025; 填充物:1px 3px; 边界半径:3倍 } .杂烩{ 背景色:#9bedff; 颜色:26477e; 填充物:1px 3px; 边界半径:3倍 } 原始内容: 电话@Mary#集团项目 购买食物和饮料#烧烤 丢弃旧电脑

我正在寻找一种jQuery方法来查找所有的hashtag(#)和at(@),其内容后跟。最后用css类包装它们

类包装以“#”或“@”开头,在下面的任何白色字母前结束。句子中有多个#和@

*{
字体系列:无衬线;
}
.在{
背景色:#ffcccb;
颜色:#bf2025;
填充物:1px 3px;
边界半径:3倍
}
.杂烩{
背景色:#9bedff;
颜色:26477e;
填充物:1px 3px;
边界半径:3倍
}
原始内容:
  • 电话@Mary#集团项目
  • 购买食物和饮料#烧烤
  • 丢弃旧电脑#家用#电脑
最终目标:
  • 电话@Mary#集团项目
  • 购买食物和饮料#烧烤
  • 丢弃旧电脑#家用#电脑

您可以轻松使用Javascript
.Split()
方法将字符串分隔为单词,然后搜索第一个字符。例如:

$('li')。每个(函数(e){
//获取完整字符串作为单词
var words=$(this.text().split(“”);
for(var i=0;i
.at{
颜色:红色;
}
.标签{
颜色:蓝色
}

  • 我是一个标签
  • 嘿,比尔,你的狗叫什么

  • 尝试只处理字母、数字,而不处理标点符号。
  • 您还可以使用
    match()
    哈希中搜索

    让myhtml=$('ul').html();
    常量mytypes=myhtml.match(/(@|#)+[^\s{
    const isat=mytype.includes('@');
    const replacestring=`${mytype}`;
    myhtml=myhtml.replace(mytype,replacestring);
    };
    forEach(el=>myReplace(el));
    $('ul').html(myhtml);
    .at{
    颜色:红色;
    }
    .杂烩{
    颜色:蓝色;
    }
    
    
    • 电话@Mary#集团项目
    • 购买食物和饮料#烧烤
    • 丢弃旧电脑#家用#电脑

    如果您的问题显示了您已经尝试过做什么,那将非常有帮助。您的问题需要更多的解释。请详细说明,以便社区能够提供帮助。我在InstagramFeed和Slick函数之外应用了您的JavaScript代码,但它不起作用,您可以检查我的笔并检查第171行。有一个小问题:如果at或hashtag之间有括号,它们将不会被您的JavaScriot代码突出显示。@GustavoReis这可能是由于我按空格分割的事实。执行
    “@dean”
    将破坏逻辑,因为“单词”实际上以
    开头“
    。我在回答中提到,
    您需要处理这些单词,以检测它们是字母/数字,而不包括其他字符。
    :)