Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > Выборка повторяющихся словосочетаний


Автор: frenkys 8.12.2007, 01:24
помогите создать регексп котрый будет превращать

"Где  кошки? кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки?"

в Где кошки?

тоесть есть есть текст и в нем нужно убрать заменить серию повотряющихся подряд словосочетаний на одно

Автор: onsql 8.12.2007, 01:57
Как то так?

Код

$str = "Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Саббака... Где кошки? Где кошки?   Где кошки?";
$str =~ s/(Где кошки\?\s*)+/$1/g;
print "The resulting value is : $str \n";


Автор: frenkys 8.12.2007, 02:07
хм smile))))))))

поправка : где кошки это так для примера , на самом делле я не знаю какое словосочетание регулярка должна сама его определить

Автор: frenkys 8.12.2007, 02:23
Код



$comment=~s/((?:\s+[А-яA-z]+)+[?*]){10,100}/$1/g;




похоже нашел решение

Автор: frenkys 8.12.2007, 02:58
хотя я с 
Код

Где кошки? Где  кошки? кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где кошки? Где freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? freak me? 
stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! stop it! 



оно не справилось

Добавлено через 6 минут и 27 секунд
Код

$comment=~s/((?:\s+[А-яA-z]+)+[?!:,-]+)\1{8,100}/$1/g;


во теперь гуд все

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)