我正试图找到一种方法来删除标题字符串开头和结尾的空格。我正在使用以下代码,但似乎并不起作用:
title = title.replace(/(^[\s]+|[\s]+$)/g, '');
任何想法?我正试图找到一种方法来删除标题字符串开头和结尾的空格。我正在使用以下代码,但似乎并不起作用:
title = title.replace(/(^[\s]+|[\s]+$)/g, '');
任何想法?var word = " testWord "; //add here word or space and test
var x = $.trim(word);
if(x.length > 0)
alert('word');
else
alert('spaces');
jQuery.trim(" hello, how are you? ");
:)
String.method('trim', function ( ) {
return this.replace(/^\s+|\s+$/g, '');
});
注意:您需要为Function.prototype定义“method”。
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g, '');
};
title.trim(); // returns trimmed title
在最近的浏览器中,默认情况下已经包含了trim方法,因此您不必显式添加它。
主流浏览器如Chrome、Firefox、Safari等都支持trim方法。已在Chrome 55.0.2883.95(64位)、Firefox 51.0.1(64位)、Safari 10.0(12602.1.50.0.10)中进行了检查。
这是一个递归尝试
function t(k){
if (k[0]==' ') {
return t(k.substr(1,k.length));
} else if (k[k.length-1]==' ') {
return t(k.substr(0,k.length-1));
} else {
return k;
}
}
这样调用:
t(" mehmet "); //=>"mehmet"
如果你想过滤特定的字符,你可以定义一个字符串列表:
function t(k){
var l="\r\n\t "; //you can add more chars here.
if (l.indexOf(k[0])>-1) {
return t(k.substr(1,k.length));
} else if (l.indexOf(k[k.length-1])>-1) {
return t(k.substr(0,k.length-1));
} else {
return k;
}
}
' '
,但问题是关于一般的空白符,包括 "\n"
、"\t"
和其他在正则表达式中匹配的不可打印字符 /\s/
。 - amenthestrimLeft()
和 trimRight()
。const str1 = " string ";
console.log(str1.trimLeft());
// => "string "
const str2 = " string ";
console.log(str2.trimRight());
// => " string"
.trim
,所以这是现代浏览器的答案:https://dev59.com/EnA75IYBdhLWcg3w-OZA#3000900 - Ziggyfunction trim11 (str) { str = str.replace(/^\s+/, ''); for (var i = str.length - 1; i >= 0; i--) { if (/\S/.test(str.charAt(i))) { str = str.substring(0, i + 1); break; } } return str; }
- Badri Gs