JQuery..find最近的空间并替换为

时间:2013-10-09 19:05:15

标签: jquery find substr

我在这里写了这段代码:

var title = "This is my comment for my title";
title.replace(/['"`!#()_:\/\.\?]|&[^;]+;/g, '').substring(0, 20);

这会给我前20个字符,但我想找到最近的空格并替换为...

我该怎么做?

JQuery的新手

现在它返回此... This is my comment f,我想返回This is my comment...

我尝试添加此代码:

title = title.substr(title.indexOf(" ")) + "...";

但它从我的变量中删除了This

3 个答案:

答案 0 :(得分:2)

这应该有效

title.replace(/\s([^" "]+)$/, '...');

点击此处http://jsfiddle.net/UwtJQ/2/

答案 1 :(得分:1)

如果前20个字符中没有空格,我不知道你打算做什么,但这是一个可能的解决方案:

var result;
if(title.indexOf(" ") > 20){
    // no space in the first 20 characters
    }else{
        result = title.substring(0, title.substring(0,20).lastIndexOf(" ")) + "...";
}

答案 2 :(得分:0)

使用此:(我在此代码中没有使用过jQuery)

var arr = title.replace(/['"`!#()_:\/\.\?]|&[^;]+;/g, '').substring(0, 20).split(" ");
arr.splice(arr.length - 1, 1);
var message = arr.join(" ") + "..."; //the message variable is the string with '...'