带有jquery的String中的第一个单词

我正在试图找出能够帮助我将字符串中的第一个单词换成span的函数。

但遗憾的是没有运气。

有人可以帮我吗?

非常感谢

大教堂

单程:

$('something').each(function(){ var me = $(this); me.html(me.html().replace(/^(\w+)/, '$1')); }); 

[ 来源 | 试试吧 ]

基本上,对于每个匹配( something ),您将用标签包裹的第一个单词替换为自身( $1 )。 字符类\w匹配字母,数字和下划线(因此定义“单词”是什么 – 您可能需要另一个定义)。

你问如何在jQuery做到这一点。 我认为你需要一个正则表达式来逐渐增加跨度

下面是一个使用jQuery从DOM获取文本并在使用正则表达式将span添加到字符串后在DOM中进行更新的示例。

 
This is the text

这就是你会得到的:

 
This is the text
 (function () { var node = $("div").contents().filter(function () { return this.nodeType == 3 }).first(), text = node.text(), first = text.slice(0, text.indexOf(" ")); if (!node.length) return; node[0].nodeValue = text.slice(first.length); node.before('' + first + '
'); })();
 var first; var i=0; $("p").each(function() { first = $("p")[i].innerHTML; $("p")[i].innerHTML = "" + first.slice(0, first.indexOf(' ')) + "" + first.slice(first.indexOf(' ')); i++; });