mmy3uka, Ви можете доповнити приклад FakiNyan і побудувати функцію, яка буде виділяти підрядок із рядка.
В його прикладі, уже є функція, яка виділяє текст по початковому і кінцевому індексу.
Наша задача - задати правильні початковий і кінцевий індекси:
ось шматочок коду який це робить:
https://codepen.io/anon/pen/WzOKzm?editors=0011
// Рядок, в якому необхідно здійснювати пошук.
var text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.";
// Підрядок для пошуку.
var string = "Lorem";
// Індекс шуканого підрядка в рядку із текстом
// або -1, якщо підрядок не знайдено.
var start = text.indexOf(string);
// Індекс наступного символу за підрядком.
// Якщо шуканий підрядок не знайдено - результат не вірний.
var end = text.indexOf(string) + string.length;
// Виводить в консоль шуканий підрядок, його початковий та кінцевий індекси.
console.log("string: " + string + ", start: " + start + ", end: " + end);
// Приклад 2.
string = "ipsum";
start = text.indexOf(string);
end = text.indexOf(string) + string.length;
console.log("string: " + string + ", start: " + start + ", end: " + end);
// Приклад 3.
string = "ip2sm";
start = text.indexOf(string);
end = text.indexOf(string) + string.length;
// Шуканий підрядок не знайдений, тому результат невірний.
console.log("wrong! " + "string: " + string + ", start: " + start + ", end: " + end);
// Приклад 4: Використання оператора if для того, щоб виводити тільки правильні результати.
string = "ip2sm";
start = text.indexOf(string);
if (start != -1) { // Якщо підрядок знайдений.
end = start + string.length;
console.log("string: " + string + ", start: " + start + ", end: " + end);
} else { // Якщо підрядок не знайдений.
console.log("string " + string + " is not found");
}
// Приклад 5.
string = "ipsum";
start = text.indexOf(string);
if (start != -1) {
end = start + string.length;
console.log("string: " + string + ", start: " + start + ", end: " + end);
} else {
console.log("string " + string + " is not found");
}
Результат виконання:
"string: Lorem, start: 0, end: 5"
"string: ipsum, start: 6, end: 11"
"wrong! string: ip2sm, start: -1, end: 4"
"string ip2sm is not found"
"string: ipsum, start: 6, end: 11"
Якщо є якісь питання - ставте їх.