Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как найти пары слов с Заглавной Буквы в тексте? / 12 сообщений из 12, страница 1 из 1
23.07.2014, 01:07
    #38703411
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
Приветствую уважаемые знатоки,

В кратце:

Можно ли построить регулярное выражение которые вырезало бы из текста все двойные слова которые стоят рядом и начинаются с большой буквы?

Длиное описани проблемы:

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

авторKansas State football coach Bill Snyder says he is cautiously optimistic about the upcoming season, but that mood only applies to today. He may think differently tomorrow, next week or next month.


таких новостей как вы понимаете в день более 300 а может и более, человеку просматривать не реально, а вот обратить внимание на какую-то новость про человека вполне можно если проверить фамилию Bill Snyder на совпадение в нашей базе данных (у нас уже более 80тыс людей). Как вы понимаете сделать поиск по каждому имени и фамилии человека и новости только что пришедшей не реально так как будет колбасить каждую проверку более 15 минут. У меня возникла другая идея можно ли написать регулярное выражение которое бы проверяла и выделяла в тексте все двойные слова которые написаны с заглавных букв? На данном примере это бы было: Kansas State и Bill Snyder Далее понятно что проверка будет проходить на передмет всех 80тыс собранных людей но это всего два запроса в отличие от 80тыс запросов против каждой новости.

Есть ли какие-нибудь идеи или хотя бы подскажите возможно ли такое?

Модератор: Название темы откорректировано. Пожалуйста, указывайте тему обсуждения более корректно.
...
Рейтинг: 0 / 0
23.07.2014, 23:13
    #38704375
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
alexnewsПриветствую уважаемые знатоки,

В кратце:

Можно ли построить регулярное выражение которые вырезало бы из текста все двойные слова которые стоят рядом и начинаются с большой буквы?


Что такое "двойные слова" Двысловы рядом и оба с большой буквы!
Такое регуляркой распознавать можно, но как я понимяю на до сначала вычленять из текста по два слова а потом проверять их. А это гемарой!
...
Рейтинг: 0 / 0
23.07.2014, 23:42
    #38704384
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
alexnewsслова которые стоят рядом и начинаются с большой буквыРегекспом, вроде такого:
Код: php
1.
/([A-Z][a-z]+\s+[A-Z][a-z]+)/

находите пары слов. Затем убираете лишние пробелы (ну мало ли чего там редакторам/писателям взбредет). И передаете эту строку в запрос к БД. Вроде всё просто.
...
Рейтинг: 0 / 0
24.07.2014, 09:11
    #38704505
Areostar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
А если будет упомянута иолько фамилия, или псевдрним в случае с артистами?
или это вам обрабатывать не надо?
...
Рейтинг: 0 / 0
24.07.2014, 15:51
    #38705125
volodin661
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
vklealexnewsслова которые стоят рядом и начинаются с большой буквыРегекспом, вроде такого:
Код: php
1.
/([A-Z][a-z]+\s+[A-Z][a-z]+)/

находите пары слов. Затем убираете лишние пробелы (ну мало ли чего там редакторам/писателям взбредет). И передаете эту строку в запрос к БД. Вроде всё просто.

А куда например регулярно пойти бедному Полу Маккартни( Paul McCartney ) или Майкл Дж Фоксу( Michael J. Fox )? ))
...
Рейтинг: 0 / 0
24.07.2014, 16:03
    #38705143
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
volodin661,

Тоже думал об этом. Однако, автор не упоминал ни о заглавной букве в середине слова, ни о заглавной букве с точкой... А упомянет эти, так потом мож еще чего захочется искать. Например, О'Генри :-)
Потому не стал отклоняться от примеров в ТЗ.
...
Рейтинг: 0 / 0
24.07.2014, 19:03
    #38705359
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
AreostarА если будет упомянута иолько фамилия, или псевдрним в случае с артистами?
или это вам обрабатывать не надо?

надо конечно, но пока не реально к сожалению. У меня простое выражение не получилось а вы говорите еще задавать условия на каждое слово с большой буквы. Это же какой объем информации нужно будет проверить.
...
Рейтинг: 0 / 0
24.07.2014, 19:05
    #38705360
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
vklevolodin661,

Тоже думал об этом. Однако, автор не упоминал ни о заглавной букве в середине слова, ни о заглавной букве с точкой... А упомянет эти, так потом мож еще чего захочется искать. Например, О'Генри :-)
Потому не стал отклоняться от примеров в ТЗ.

запустить бы этот пример, тогда можно было бы думать о продолжении.
...
Рейтинг: 0 / 0
24.07.2014, 19:35
    #38705381
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
alexnewsvkle,

Код: php
1.
/([A-Z][a-z]+\s+[A-Z][a-z]+)/





приношу свои извинения vkle, работает как часы это я с тормозил, давно не писал код. Спасибо Огромное это было так просто.
...
Рейтинг: 0 / 0
24.07.2014, 21:18
    #38705442
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
все классно, только возникла другая проблема:

Парсер дергает все с заданной страницы а соответственно на странице не только статья но и еще анонсы других статей что делает не реальным автоматический анализ статей. Печально конечно я об этом не подумал. В результате с одной страницы собирается более 600 пар слов из них 590 бесполезных. 8 имена с других анонсов и только 2 полезных. Может у кого-нибудь есть более продуктивная идея? Заранее буду благодарен.
...
Рейтинг: 0 / 0
24.07.2014, 22:08
    #38705462
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
alexnewsна странице не только статья но и еще анонсы других статей
Приметно так:
1. Пользуясь набором некоторых признаков (теги, классы, каменты и т.п.), определить границы статьи.
2. Взять полезный текст из этих границ (или удалить ненужное).
3. Искать в полезном тексте.

Еще вариант: поискать альтернативный источник исходных данных, где нет бесполезного текста. Например, RSS.
...
Рейтинг: 0 / 0
26.07.2014, 01:20
    #38706441
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как найти пары слов с Заглавной Буквы в тексте?
vkle, Вы мне просто помогли воплотить мою мечту в жизнь!! Спасибо Вам огромное. C RSS все просто супер хватает и нет кучи бесполезных слов. Еще бы как-то таких как Shaquille O'Neal и John McEnroe отслеживать то вообще было бы суперски. Но мечта уже сбылась, будем отслеживать свежие новости и переводить самое интересное.
Еще раз спасибо.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как найти пары слов с Заглавной Буквы в тексте? / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]