Как обрезать нежелательную непрерывную строку в конце в JavaScript? - PullRequest
0 голосов
/ 21 сентября 2019

Я пытаюсь обрезать строку ненужными символами в конце, как показано ниже.Буду признателен, если кто-то исправит меня или предоставит мне легкий подход !!

Ожидаемый результат: finalString, Hello ---- TecAdmin

const longStr = "Hello ---- TecAdmin------------";

function trimString(str) {
  const lastChar = str[str.length - 1];
  if(lastChar === '-') {
   str = str.slice(0, -1);
   trimString(str);
  } else {
   console.log(str,'finally')
   return str;
  }
}

const finalString = trimString(longStr);

console.log('finalString', finalString)

Ответы [ 3 ]

2 голосов
/ 21 сентября 2019

Попробуйте - замените только 5 или более -

longStr.replace(/-{5,}/g, '')
1 голос
/ 21 сентября 2019

Отработка комментариев и ответов Дерика, но с учетом любого количества тире на конце:

const longStr = "Hello ---- TecAdmin------------";
var thing = longStr.replace(/-*$/g, '');
console.log(thing);
0 голосов
/ 21 сентября 2019

используйте split для разделения строки на массив, затем используйте pop столько раз, чтобы удалить символы в конце.Вы можете проверять последний символ каждый раз и использовать pop, если его "-"

//js
const longStr = "Hello ---- TecAdmin------------";
let splitLongStr = longStr.split('');

for (let i=0; i<splitLongStr.length; i++) {
  splitLongStr.pop();
}

let longStrChopped = splitLongStr.join('');
...