Jquery 使用css/js将第二个单词修剪为第一个字母
我有下面的div。其中的文本将是动态的Jquery 使用css/js将第二个单词修剪为第一个字母,jquery,html,css,Jquery,Html,Css,我有下面的div。其中的文本将是动态的 <div class="full_name">Libin Babu</div> Libin Babu 我希望结果是Libin B. 也就是说,我想把第二个名字改成第一个字母,后面跟着一个“点”。 有关于CSS或jQuery的帮助吗??我更喜欢css解决方案 谢谢。您可以使用replace/regex: "Libin Babu".replace(/^(\S+)\s+(\S).*/, '$1 $2.') // "Libin B."
<div class="full_name">Libin Babu</div>
Libin Babu
我希望结果是Libin B.
也就是说,我想把第二个名字改成第一个字母,后面跟着一个“点”。
有关于CSS或jQuery的帮助吗??我更喜欢css解决方案
谢谢。您可以使用replace/regex:
"Libin Babu".replace(/^(\S+)\s+(\S).*/, '$1 $2.')
// "Libin B."
要将其替换到位,可以使用:
$('.full_name').each(function (d, div) {
$(div).text($(div).text().replace(/^(\S+)\s+(\S).*/, '$1 $2.'));
});
正则表达式解释:
/ // Regex start
^ // Beggining of the string
(\S+) // One or more non-whitespace characters in group $1
\s+ // One or more whitespace characters
(\S) // Exactly one non-whitespace character in group $2
.* // Any number of any characters
/ // Regex end
但是,您需要验证第二个字符串长度是否大于等于1。您可以使用java脚本子字符串。例子。
You can use java script substring. example.
Script (place this in header section)
-----------------------------
<script language="javascript">
function splitword(word){
var your_str = word;
var str1 = your_str.substr(0,your_str.indexOf(' '));
var str2 = your_str.substr(your_str.indexOf(' ')+1);
var str2 = str2.substr(0,1);
alert(str1+" "+str2+".");
}
</script>
HTML (place this in body section)
--------------------------------
<div class="full_name">Libin Babu</div>
<input type="button" value="Split" onclick="splitword('Libin Babu');" />
脚本(将其放在标题部分)
-----------------------------
函数拆分字(字){
var your_str=单词;
var str1=您的字符串substr(0,您的字符串indexOf(“”));
var str2=你的子字符串(你的字符串索引(“”)+1);
var str2=str2.substr(0,1);
警报(str1+“”+str2+);
}
HTML(将其放在正文部分)
--------------------------------
利宾巴布
是否要将Libin Babu
文本替换为Libin B.
中的
?@是的。确切地这正是我想要的。太好了!这很有效。等待是否有人提出CSS解决方案。:)我想我对正则表达式很满意!!!=)你真了不起@kamituel。非常感谢。@Libin-没问题:)不过,你让我想到了用CSS做这件事。不知道是否有人会想出这样的主意。一点帮助。如何在第二个单词后修剪其他单词?如果div包含Libin Babu word
,则结果也将附加第三个单词。但是我希望结果一直到第二个单词的第一个字母。@Libin-只需将最后一个\S*
替换为*
-请参阅更新的答案
You can use java script substring. example.
Script (place this in header section)
-----------------------------
<script language="javascript">
function splitword(word){
var your_str = word;
var str1 = your_str.substr(0,your_str.indexOf(' '));
var str2 = your_str.substr(your_str.indexOf(' ')+1);
var str2 = str2.substr(0,1);
alert(str1+" "+str2+".");
}
</script>
HTML (place this in body section)
--------------------------------
<div class="full_name">Libin Babu</div>
<input type="button" value="Split" onclick="splitword('Libin Babu');" />