簡體   English   中英

"刪除最后一個特殊字符 javascript 之后的所有字符"

[英]Remove all characters after the last special character javascript

我有以下字符串。

var string  = "Welcome, to, this, site";

我想刪除最后一個逗號后的所有字符,使字符串變為

var string  = "Welcome, to, this";

我如何在 Javascript 中處理它? 我努力了,

var string = "Welcome, to, this, site";
string = s.substring(0, string.indexOf(','));

但這會刪除第一個逗號后的所有字符。

你需要的是lastIndexOf:

string = s.substring(0, string.lastIndexOf('?'));

您可以使用 split 和 splice 來實現如下結果。

var string  = "Welcome, to, this, site";
string = string.split(',')
string.splice(-1) //Take out the last element of array
var output = string.join(',')
console.log(output) //"welcome, to, this"

有一個String.prototype.lastIndexOf(substring)方法,你可以用它來代替String.prototype.indexOf(substring)

var delimiter = ",";
if (inputString.includes(delimiter)) {
    result = inputString.substring(0, inputString.lastIndexOf(delimiter));
} else {
    result = inputString;
}

替代方案包括Madara Uchiha的建議:

var delimiter = ",";
var parts = inputString.split(delimiter);
if(parts.length > 0) { parts.pop(); }
result = parts.join(delimiter);

或者使用正則表達式:

result = inputString.replace(/,[^,]*$/, "");

試試這個

var string  = "Welcome, to, this, site";
var ss = string.split(",");
var newstr = "";
for(var i=0;i<ss.length-1;i++){
  if (i == ss.length-2)
      newstr += ss[i];
  else
      newstr += ss[i]+", ";
}
alert(newstr);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM