Получается задача в чём. Нужно найти первое слово строки, но при этом игнорируя запятые. точки и пробелы перед или после слова.
var string = "Hallo, World";
function firstWord(str) {
// returns the first word in a given text.
var SpaceCode = str.indexOf(" ")
if (str.indexOf === -1) {
return str;
} else if (str.charAt(0) === "," || str.charAt(0) === "" || str.charAt(0) === "." ) {
return str.substr(1, SpaceCode);
} else if(str.charAt(1) === ",") {
return str.substr(0, SpaceCode);
} else {
return str.substr(0, SpaceCode);
}
return 0;
}
console.log(firstWord(string));
Это мой код, немного криво написан. Но суть в чём он ищет первое слово, игнорирует перед словом точку но не игнорирует много торчек например если бы строка была такая (firstWord("... and so on ..."), "and")
и почему-то не игнорирует пробел перед словом.
Термин "слово" в контексте регулярных выражений обозначает буквы + цифры + нижнее подчеркивание. Если вам нужно это, тогда:
var matches = '... some_long_word another word ...'.match(/(\w+)/);
var firstWord = matches[1];
Если только слова (русские + английские):
var matches = '... some_long_word another word ...'.match(/([a-zа-яё]+)/i);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
На сервере есть папка с подпапками, в которых лежат изображения разных форматовПодскажите, как можно массово изменить в именах этих файлов...
Подскажите как можно получить массив сгруппированных товаров из файла excel
Есть ли какой-либо способ сделать эффект вздутия картинки (bloat effect)? Не обязательно из центра
Подскажите чайнику как лучше сделать: