Как удалить подчеркивание из начала строки

#javascript

#javascript

Вопрос:

Мне нужно удалить подчеркивания из начала строки (но только начало),

Например:

 __Hello World
  

Должно быть преобразовано в :

 Hello World
  

Но Hello_World должно остаться как Hello_World .

Сложность в том, что я не знаю, как могут быть подчеркивания, которых может быть 1,2 или 20.

Комментарии:

1. Что пробовали до сих пор?. Вы можете сделать это несколькими способами, вот с помощью while цикла let str = "__Hello World" while(str[0] === '_') str = str.slice(1)

2. Вы что-нибудь пробовали? Это может быть достигнуто несколькими способами, включая использование цикла или регулярного выражения.

Ответ №1:

Вы можете передать регулярное выражение в replace() . /^_ /, говорит найти любое число _ после в начале строки:

 let  texts = ["__Hello World", "Hello_World", 'jello world_', '_Hello_World_', '___________Hello World']
let fixed = texts.map(t => t.replace(/^_ /, ''))
console.log(fixed)  

Ответ №2:

Регулярное выражение вполне подходит для этой задачи:

 let str = "__h_e_l_l_o__"

console.log(str.replace(/^_*/, ""));  

Ответ №3:

Метод 01:

 var str = '__Hello World';
str = str.replace(/^_*/, "");
  

Метод 02:

 var str = '__Hello World';
while(str.startsWith('_')){
    str = str.replace('_','');
}


console.log(str);
// Hello World