Привет! 👋 😊
В этой статье я хотел бы показать вам два способа удалить дублирующиеся строки из некоторого текста в JavaScript. 🔠
Прежде чем мы начнем , Я очень рекомендую вам проверить Запускаемые примеры Для решения на нашем сайте: JavaScript – удалить дублированные линии
Мы будем использовать два метода:
фильтр()уменьшать()
Пример на основе Filter ()
Этот подход использует функциональный шаблон программирования.
В тексте, который я использовал набор операций для удаления дублированных линий:
split ()Метод разделения текста на строки, которые принимают символ новой линии в 4 различных вариантах, который является универсальным подходом,Filter ()метод, который создает новый массив элементов, протестированных с помощью предоставленной функции,join ()Метод, чтобы объединить элементы обратно.
Практический пример:
const newLineExpression = /\r\n|\n\r|\n|\r/g;
const removeDuplicatedLines = (text) => {
return text.split(newLineExpression)
.filter((item, index, array) => array.indexOf(item) === index)
.join('\n');
};
// Usage example:
const text = `a
b
b
a
a
c
c`;
console.log(removeDuplicatedLines(text)); // a
// b
// c
Вы можете запустить этот пример здесь
пример на основе () на основе ()
Этот подход был создан, чтобы показать, что можно получить тот же эффект, что и в примере выше, с уменьшить () метод
Практический пример:
const newLineExpression = /\r\n|\n\r|\n|\r/g;
const removeDuplicatedLines = (text) => {
const blocker = {}; // prevents lines dupplication
return text.split(newLineExpression)
.reduce((result, line) => {
if (blocker.hasOwnProperty(line)) {
return result;
}
blocker[line] = true;
return result + line + '\n';
}, '');
};
// Usage example:
const text = `a
b
b
a
a
c
c`;
console.log(removeDuplicatedLines(text)); // a
// b
// c
Вы можете запустить этот пример здесь
Если вы нашли это решение полезным, вы можете отреагировать на этот пост или просто оставить комментарий, чтобы сообщить мне, что вы думаете. Спасибо за чтение и увидимся в следующий раз! 😊
Напишите нам! ✉
Если у вас есть какие -либо проблемы, чтобы решить или вопросы, на которые никто не может ответить, связанный с темой React или JavaScript, или вы ищете наставничество, напишите нам на Dirask.com -> Вопросы
Оригинал: “https://dev.to/diraskjavascript/javascript-remove-duplicated-lines-2i9e”