jquery跨越第一个空间

问题描述 投票:2回答:2

我有三个单词我想在第一个空格之后添加内容

hello world

变为:

hello <span>world</span>

和:

hello world again

变为:

hello <span>world again</span>

这是我的JavaScript代码:

 $( "#main-nav li a" ).each(function( index ) {
   $(this).html( $(this).text().replace(/([\S]*)\s(.*)/, "$1 <span>$2</span>") );
}); 
javascript jquery tags
2个回答
5
投票

你可以用一些正则表达式做到这一点:

text = text.replace(/([\S]*)\s(.*)/, "$1 <span>$2</span>");

如果texthello world,上面的代码将把它转换为hello <span>world</span>


1
投票

也许更容易理解(对我来说肯定),

  1. 在空格字符上使用find方法,在字符串中获取第一个位置。
  2. 获取第一个子字符串,从索引0到特定位置。
  3. 从特定位置获取子串到string.length并包装它们
  4. 再次合并两个字符串。
© www.soinside.com 2019 - 2024. All rights reserved.