我遇到了jQuery修剪的问题。我在jQuery中有一个字符串:
var string1;
string1 = "one~two~";
如何修剪尾随波浪号?
答案 0 :(得分:76)
jQuery的.trim()
方法引用空格..
说明:从字符串的开头和结尾删除空格。
你需要
string1.replace(/~+$/,'');
这将删除所有尾随~
。
因此one~two~~~~~
也会成为one~two
答案 1 :(得分:9)
只需使用javascript replace将最后一个字符串更改为空:
string1.replace(/~+$/g,"");
答案 2 :(得分:3)
一个选项:
string1 = string1.substring(0,(string1.length-1));
很长的路要走..它只是去掉了最后一个字符..而不是特定的代字号。
答案 3 :(得分:2)
IMO这是进行右/左修剪的最佳方式,因此具有完整的修剪功能(因为javascript本身支持string.trim
)
String.prototype.rtrim = function (s) {
if (s == undefined)
s = '\\s';
return this.replace(new RegExp("[" + s + "]*$"), '');
};
String.prototype.ltrim = function (s) {
if (s == undefined)
s = '\\s';
return this.replace(new RegExp("^[" + s + "]*"), '');
};
用法示例:
var str1 = ' jav ~'
var r1 = mystring.rtrim('~'); // result = ' jav ' <= what OP is requesting
var r2 = mystring.rtrim(' ~'); // result = ' jav'
var r3 = mystring.ltrim(); // result = 'jav ~'
P.S。如果要为rtrim
或ltrim
指定参数,请确保使用正则表达式兼容的字符串。例如,如果您想要rtrim
[
,则应使用:somestring.rtrim('\\[')
答案 4 :(得分:-1)
var myStr = "One~Two~Three~Four~"
var strLen = myStr.length;
myStr = myStr.slice(0,strLen-1);
alert (myStr);
这将删除字符串中的最后一个字符。那是你想要的吗?
答案 5 :(得分:-3)
string1 = string1.substring(0, string1.length - 1);
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substring
答案 6 :(得分:-6)
您可以使用substring
javascript方法。
试试这个
var string1 = "one~two~";
string1 = $.trim(string1).substring(0, string1.length -1);