2016-09-27 6 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);