Loading...
Val3ntinV avatar Val3ntinV 20 Точки

JS ADVANCED Бърз въпрос - Regex (Words UpperCase)

Задачата ми дава 33 точки !! Може ли някой да предложи решение , че от Java на JS малко трудно се получава !

https://pastebin.com/43xk0GH2   - код на задачата

 

9.   *Words Uppercase

Write a program that extracts all words from a passed in string and converts them to upper case. The extracted words in upper case must be printed on a single line separated by ", ".

The input comes as a single string argument - the text to extract and convert words from.

The output should be a single line containing the converted string.

Examples

Input

Output

 

Input

Output

'Hi, how are you?'

HI, HOW, ARE, YOU

 

'hello'

HELLO

 

Hints

  • You may need to use a Regular Expression or alternatively check for all delimiters that can be found in a sentence (ex. ",", " ", "!", "?" and so on).
Тагове:
0
JavaScript Advanced
MartinBG avatar MartinBG 4803 Точки

Условиео на задачата не е много конкретно по отношение на това какво може да съдържа думата и какво е разделител, но с малко проба-грешка в Judge може да се налучка.

 

Ето две примерни решения:

function solve(text) {

  let result = text.toUpperCase()
    .split(/[\W]+/)
    .filter(w => w.length > 0)
    .join(", ");

  console.log(result);
}


function solve(text) {
  let result = text.toUpperCase()
    .match(/\w+/g)
    .join(', ');
  
  console.log(result);
}

 

4
04/05/2020 18:13:30
Val3ntinV avatar Val3ntinV 20 Точки

Много благодаря !!!

1
willystyle avatar willystyle 2472 Точки

@Мартин във второто решение си пропуснал флага /g, без него ще взима само първата дума.

 

4
Elena123456 avatar Elena123456 235 Точки

Здравейте, може ли малко помощ за тази задача, тъй като не разбирам защо ми изписва следната грешка: Uncaught TypeError: String.prototype.matchAll called with a non-global RegExp argument

 

function extractWords(argument) {

    const regEx = new RegExp('[A-Z]');

    const text = argument.toUpperCase();

    const array = [...text.matchAll(regEx)];

 

    array.forEach(element => {

        console.log(element);

    });  

}

 

0
APeev89 avatar APeev89 2 Точки

Решение на 3 реда дава в Judge 100/100

 

function solve(text){

 const regex = /\w+/gm

  let result = text.match(regex);

 console.log(result.join(', ').toUpperCase())

};

solve('Hi, how are you?');

solve('hello')

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.