2016-09-27 89 views
0

這是我的輸出如何使用javascript從字符串結尾刪除多個逗號?

9781473507340.epub,9781473518902.epub,,,,,, 

我需要這個輸出

9781473507340.epub,9781473518902.epub 

僅使用動態地javascript.It可能獲取文件名獲取動態

+0

爲什麼你有這個逗號?你有控制輸出嗎? –

+0

你是如何得到這麼多逗號的?你在追加字符串嗎? – Arti

+0

請添加更多詳細信息來解釋您的問題 – Arti

回答

4

要刪除所有尾隨逗號,你可以使用這個正則表達式:

var str = "9781473507340.epub,9781473518902.epub,,,,,,"; 
var res = str.trim().replace(/,{1,}$/, ''); 
console.log(res); // 9781473507340.epub,9781473518902.epub 
+0

好奇心,有沒有原因使用'{1,}'而不是'+'? –

+0

不,不是真的@NadiaCerezo,都應該做同樣的工作。 – baao

+0

是的,當然,他們是一樣的,我只是好奇你爲什麼會喜歡前者而不是後者。 ^^ –

0

你可能會這樣做,

var str = "9781473507340.epub,9781473518902.epub,,,,,,", 
 
newStr = str.replace(/,*(?=$)/,""); 
 
console.log(newStr);

-1

可能是矯枉過正,但你可以嘗試這樣的事情。

可以遵循這些步驟。

  1. 拆分爲基於逗號使用的數組split()
  2. 過濾掉空白項目。
  3. 使用join()將新數組放回字符串中。

var input = '9781473507340.epub,9781473518902.epub,,,,,,'; 
 
var output = input 
 
    .split(',') //split to array 
 
    .filter(function(val, b){ 
 
     return val.length 
 
    }) //filter out the blank items 
 
    .join(','); //put the new array to a string. 
 
console.log(output);

相關問題