Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 27.01.2016
Сообщений: 40
1

Удалить из текста повторные вхождения слов

11.02.2016, 13:51. Показов 1425. Ответов 8
Метки нет (Все метки)

из данного текста удалить повторные вхождения слов
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2016, 13:51
Ответы с готовыми решениями:

Удалить из строки все повторные вхождения символов
Удалить из строки все повторные вхождения символов

Удалить все повторные вхождения элементов в строке
Пришлось чуть продублировать вопрос. Есть код: Type Tinf=char; List=^TList; ...

Удалить из строки повторные вхождения слов
Дана последовательность, содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 строчных...

Напечатать последовательность слов, не удалив из нее повторные вхождения слов
дана последовательность содержащая от 1 до 30 слов, в каждом из которых от 1 до 5 прорисных...

8
Эксперт Pascal/Delphi
6738 / 4523 / 4790
Регистрация: 05.06.2014
Сообщений: 22,310
11.02.2016, 17:52 2
Изменить текст, удалив из него все повторные вхождения слов.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31038 / 20273 / 7896
Регистрация: 22.10.2011
Сообщений: 35,174
Записей в блоге: 6
11.02.2016, 18:24 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

По традиции:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
uses System.Text.RegularExpressions, System.Collections.Generic;
 
var 
  hs := new HashSet<string>(); 
  
begin
  var s := 'В этом тексте нужно: убрать повторные вхождения слов слов. ' + 
    'После этого в тексте должны будут остаться только по одной копии слов, ' +
    'все последующие будут удалены';
    
  s := Regex.Replace(s, '\w+', (m : System.Text.RegularExpressions.Match) -> 
                               hs.Add(m.Value) ? m.Value : '');
  writeln(s);
end.
0
6 / 6 / 9
Регистрация: 16.04.2015
Сообщений: 121
11.02.2016, 19:07 4
volvo, вау, скажи, пожалуйста, где ты такому научился?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31038 / 20273 / 7896
Регистрация: 22.10.2011
Сообщений: 35,174
Записей в блоге: 6
11.02.2016, 19:10 5
Какому "такому"? Это же элементарное использование коллекций, что тут такого особенного?
0
6 / 6 / 9
Регистрация: 16.04.2015
Сообщений: 121
11.02.2016, 19:38 6
volvo, коллекции, лямбды, вопросы там всякие, где ты этому всему научился. Ты так искусно владеешь Pascal-ем! Скажи, где ты этому научился? Может какие-то книги. Пожалуйста, дай наставлений, гуру.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31038 / 20273 / 7896
Регистрация: 22.10.2011
Сообщений: 35,174
Записей в блоге: 6
11.02.2016, 19:59 7
Я учился, читая чужие исходники (по большей части - на C#, ибо большая часть функционала PABC.NET пришла именно оттуда) и форумы/блоги разработчиков. Ну и не люблю останавливаться на полпути, если начал решать задачу - нужно ее доделать, а тут уж без чтения MSDN и тестирования их примеров никуда не продвинешься. А вообще, ни C# ни Pascal моими "родными" языками не являются, Паскаль - это хобби.
0
6 / 6 / 9
Регистрация: 16.04.2015
Сообщений: 121
12.02.2016, 02:11 8
volvo, вот что придумал, программа работает, только сами делители удаляет.
Pascal
1
2
3
4
5
6
begin
var s := 'В этом тексте нужно: убрать повторные вхождения слов слов. ' + 
    'После этого в тексте должны будут остаться только по одной копии слов, ' +
    'все последующие будут удалены';
Seq(s.ToWords(' ', '.', ',', ')', '''', '-', '?', '!', ':')).Distinct.Print;
end.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
31038 / 20273 / 7896
Регистрация: 22.10.2011
Сообщений: 35,174
Записей в блоге: 6
12.02.2016, 11:54 9
Ну, с удалением разделителей это не проблема, моя-то разделители оставляет. Да и разделители могут быть другими. Кавычки, например, да мало ли еще что...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2016, 11:54

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Удалить повторные вхождения для соседних элементов в массиве
Дано: массив целых чисел. Требуется преобразовать его следующим образом: Заменить одинаковые...

Из файла f получить файл g, исключив повторные вхождения чисел
Помогите пожалуйста с прогой... Условие: Записать файл f целыми числами, полученными с помощью...

Исключить повторные вхождения одного и того же числа из типизированного файла
Дан файл, компоненты которого являются целыми числами. Преобразовать его, исключив повторные...

Написать программу, которая удаляет из заданной строки повторные вхождения символов
Написать программу, которая удаляет из заданной строки повторные вхождения символов. Сколько ни...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.