Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 04.01.2018
Сообщений: 5

Как выделить из текста имена?

21.01.2018, 18:04. Показов 3204. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста с задачей.
Суть задачи такова: в функцию поступает текст в виде строки(производной длины т.к. загружается с файла). Из этой строки нужно выбрать все имена по типу "Фамилия Имя Отчество" и "Фамилия И. О.". Как я понимаю поиск выполняется по определенному расположению точек и заглавных букв, а для этого нужно разбить весь текст на какие-то элементы. Как это сделать и на что лучше разбивать?
Заранее благодарен.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.01.2018, 18:04
Ответы с готовыми решениями:

Как выделить имена файлов, которые старше трёх дней?
пользую ls-lR | awk '{print $6, $7, $8}' > del_lst

Как удалить из текста все имена собственные?
дан какой-либо текст. написать функцию, которая удалит из теста все имена собственные

Как из текста выделить слово
Всем привет. уже несколько дней мучаюсь не могу найти ответ. В общем есть определенный массив с ссылками Ну например: <a...

7
1123 / 794 / 219
Регистрация: 15.08.2010
Сообщений: 2,185
21.01.2018, 18:22
Цитата Сообщение от tonnako Посмотреть сообщение
Как это сделать
для начала уточнить, все что имеет три заглавных буквы подряд это ФИО? Как учитывать большую букву в начале предложения? ну и все в таком духе.
Цитата Сообщение от tonnako Посмотреть сообщение
на что лучше разбивать
на слова, которые шли через пробел
или написать регулярку
0
0 / 0 / 0
Регистрация: 04.01.2018
Сообщений: 5
21.01.2018, 18:27  [ТС]
Цитата Сообщение от КОП Посмотреть сообщение
для начала уточнить, все что имеет три заглавных буквы подряд это ФИО? Как учитывать большую букву в начале предложения? ну и все в таком духе.
Через пробел три слова подряд, состоящих только из русских букв, где первая буква – большая, остальные – малые.

Добавлено через 58 секунд
Цитата Сообщение от КОП Посмотреть сообщение
на слова, которые шли через пробел
А какие методы для этого использовать?
0
1123 / 794 / 219
Регистрация: 15.08.2010
Сообщений: 2,185
21.01.2018, 18:35
Цитата Сообщение от tonnako Посмотреть сообщение
А какие методы для этого использовать?
https://docs.oracle.com/javase... ng.String-

но регулярками проще
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18295 / 14219 / 5368
Регистрация: 17.03.2014
Сообщений: 28,896
Записей в блоге: 1
21.01.2018, 19:03
tonnako,
C#
1
2
3
4
5
6
7
string text = @"Помогите пожалуйста с задачей.
Суть задачи такова: в функцию поступает текст в виде строки(производной длины т.к. загружается с файла). Из этой строки нужно выбрать все имена по типу ""Фамилия Имя Отчество"" и ""Фамилия И. О."". Как я понимаю поиск выполняется по определенному расположению точек и заглавных букв, а для этого нужно разбить весь текст на какие-то элементы. Как это сделать и на что лучше разбивать?
Заранее благодарен. ";
foreach (Match m in Regex.Matches(text, @"[А-ЯЁ][а-яё]+\s(([А-ЯЁ][а-яё]+\s[А-ЯЁ][а-яё]+)|([А-ЯЁ]\.\s[А-ЯЁ]\.))"))
{
    Console.WriteLine(m.Value);
}
Цитата Сообщение от КОП Посмотреть сообщение
https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-
Причем здесь java?
1
0 / 0 / 0
Регистрация: 04.01.2018
Сообщений: 5
21.01.2018, 19:09  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
C#
1
2
3
4
5
6
7
string text = @"Помогите пожалуйста с задачей.
Суть задачи такова: в функцию поступает текст в виде строки(производной длины т.к. загружается с файла). Из этой строки нужно выбрать все имена по типу ""Фамилия Имя Отчество"" и ""Фамилия И. О."". Как я понимаю поиск выполняется по определенному расположению точек и заглавных букв, а для этого нужно разбить весь текст на какие-то элементы. Как это сделать и на что лучше разбивать?
Заранее благодарен. ";
foreach (Match m in Regex.Matches(text, @"[А-ЯЁ][а-яё]+\s(([А-ЯЁ][а-яё]+\s[А-ЯЁ][а-яё]+)|([А-ЯЁ]\.\s[А-ЯЁ]\.))"))
{
    Console.WriteLine(m.Value);
}
Огромное спасибо, но к сожалению регулярные выражения использовать нельзя.
0
21.01.2018, 19:15

Не по теме:

Цитата Сообщение от OwenGlendower Посмотреть сообщение
Причем здесь java?
забыл какой раздел, смысл тот же)

0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18295 / 14219 / 5368
Регистрация: 17.03.2014
Сообщений: 28,896
Записей в блоге: 1
21.01.2018, 19:18
Цитата Сообщение от tonnako Посмотреть сообщение
к сожалению регулярные выражения использовать нельзя
Ну значит
C#
1
text.Split()
и дальше цикл с ручными проверками
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.01.2018, 19:18
Помогаю со студенческими работами здесь

прочитать программу на C++ и выделить все имена
прочитать программу на C++ и выделить все имена(имена должны выводиться при выводе)

Как выделить числовую часть текста?
Есть текстовые метки типа "64GDFGD464GH4Y6-64GF/GBH" Нужно выделить только числа. Как это сделать грамотно? Наваял кривульку: ...

Как выделить текста от значения инпута?
Здравствуйте, подскажите как можно выделять цену жирным шрифтом или менять цвет текста в зависимости от введенного значения в input. У...

Как выделить отдельные блоки из текста
Есть фрагмент текста <tr class="" id="128230683"><td>текст1</td> <td><center>экзамен</center></td> <td class=mark...

Как из текста выделить и добавить товары из БД?
Дорогие форумчане! У меня такая задача для MS ACCESS, есть такой текст: «Девочки, добрый день, хочу заказать на завтра 10 черного и...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru