<?php
$text = "«Grammar Nazi». Напиши скрипт, проверяющий текст на наличие злостных ошибок:
нет пробела после запятой,точки с запятой;восклицательного!знака,
вопросительного?знака, двоеточия:«жы» или «шы» написано с буквой ы.
в тексте есть слово «координально» или «зделал», «зделаю», «зделан»
в тексте есть слова «а» или «но» без запятой перед ними. Например а или но даже." ;
echo $text . "\n \n " ;
'/([,.!?;:])([а-яёА-ЯЁa-z0-9])/ui' => 'пробел после знака препинания' ,
'/координально/ui' => 'правильно будет "кАрдинально' ,
'/(здела)(л|ю|н)/ui' => 'приставки "З" не существует' ,
'/(ж|ш)ы/ui' => 'жи/ши пиши с буквой И' ,
'/([а-яёА-ЯЁa-z0-9]+)(\\s+)(а|но)(\\s+)/ui' => 'запятая перед "а", "но"'
) ;
foreach ( $regexs as $pattern => $message ) {
for ( $i = 0 ; isset ( $errors [ 0 ] [ $i ] ) ; $i ++ ) { echo $errors [ 0 ] [ $i ] . " - " . $message . "\n " ;
}
}
PD9waHAKCmVycm9yX3JlcG9ydGluZygtMSk7Cm1iX2ludGVybmFsX2VuY29kaW5nKCd1dGYtOCcpOwoKJHRleHQgPSAiwqtHcmFtbWFyIE5hemnCuy4g0J3QsNC/0LjRiNC4INGB0LrRgNC40L/Rgiwg0L/RgNC+0LLQtdGA0Y/RjtGJ0LjQuSDRgtC10LrRgdGCINC90LAg0L3QsNC70LjRh9C40LUg0LfQu9C+0YHRgtC90YvRhSDQvtGI0LjQsdC+0Lo6CtC90LXRgiDQv9GA0L7QsdC10LvQsCDQv9C+0YHQu9C1INC30LDQv9GP0YLQvtC5LNGC0L7Rh9C60Lgg0YEg0LfQsNC/0Y/RgtC+0Lk70LLQvtGB0LrQu9C40YbQsNGC0LXQu9GM0L3QvtCz0L4h0LfQvdCw0LrQsCwgCtCy0L7Qv9GA0L7RgdC40YLQtdC70YzQvdC+0LPQvj/Qt9C90LDQutCwLCDQtNCy0L7QtdGC0L7Rh9C40Y86wqvQttGLwrsg0LjQu9C4IMKr0YjRi8K7INC90LDQv9C40YHQsNC90L4g0YEg0LHRg9C60LLQvtC5INGLLgrQsiDRgtC10LrRgdGC0LUg0LXRgdGC0Ywg0YHQu9C+0LLQviDCq9C60L7QvtGA0LTQuNC90LDQu9GM0L3QvsK7INC40LvQuCDCq9C30LTQtdC70LDQu8K7LCDCq9C30LTQtdC70LDRjsK7LCDCq9C30LTQtdC70LDQvcK7CtCyINGC0LXQutGB0YLQtSDQtdGB0YLRjCDRgdC70L7QstCwIMKr0LDCuyDQuNC70LggwqvQvdC+wrsg0LHQtdC3INC30LDQv9GP0YLQvtC5INC/0LXRgNC10LQg0L3QuNC80LguINCd0LDQv9GA0LjQvNC10YAg0LAg0LjQu9C4INC90L4g0LTQsNC20LUuIjsKCmVjaG8gJHRleHQuIlxuXG4iOwoKJHJlZ2V4cyA9IGFycmF5KAoJJy8oWywuIT87Ol0pKFvQsC3Rj9GR0JAt0K/QgWEtejAtOV0pL3VpJyAJCQk9PiAn0L/RgNC+0LHQtdC7INC/0L7RgdC70LUg0LfQvdCw0LrQsCDQv9GA0LXQv9C40L3QsNC90LjRjycsCgknL9C60L7QvtGA0LTQuNC90LDQu9GM0L3Qvi91aScgCQkJCQkJCT0+ICfQv9GA0LDQstC40LvRjNC90L4g0LHRg9C00LXRgiAi0LrQkNGA0LTQuNC90LDQu9GM0L3QvicsCgknLyjQt9C00LXQu9CwKSjQu3zRjnzQvSkvdWknIAkJCQkJCT0+ICfQv9GA0LjRgdGC0LDQstC60LggItCXIiDQvdC1INGB0YPRidC10YHRgtCy0YPQtdGCJywgCgknLyjQtnzRiCnRiy91aScgCQkJCQkJCQk9PiAn0LbQuC/RiNC4INC/0LjRiNC4INGBINCx0YPQutCy0L7QuSDQmCcsCgknLyhb0LAt0Y/RkdCQLdCv0IFhLXowLTldKykoXFxzKyko0LB80L3QvikoXFxzKykvdWknID0+ICfQt9Cw0L/Rj9GC0LDRjyDQv9C10YDQtdC0ICLQsCIsICLQvdC+IicKCSk7CiRlcnJvcnMgPSBhcnJheSgpOwoKZm9yZWFjaCgkcmVnZXhzIGFzICRwYXR0ZXJuID0+ICRtZXNzYWdlKSB7CglwcmVnX21hdGNoX2FsbCgkcGF0dGVybiwgJHRleHQsICRlcnJvcnMsIFBSRUdfUEFUVEVSTl9PUkRFUik7Cglmb3IoJGkgPSAwOyBpc3NldCgkZXJyb3JzWzBdWyRpXSk7ICRpKyspIHsKCQllY2hvICRlcnJvcnNbMF1bJGldLiIgLSAiLiRtZXNzYWdlLiJcbiI7Cgl9CgkKfQ==
stdout
«Grammar Nazi». Напиши скрипт, проверяющий текст на наличие злостных ошибок:
нет пробела после запятой,точки с запятой;восклицательного!знака,
вопросительного?знака, двоеточия:«жы» или «шы» написано с буквой ы.
в тексте есть слово «координально» или «зделал», «зделаю», «зделан»
в тексте есть слова «а» или «но» без запятой перед ними. Например а или но даже.
,т - пробел после знака препинания
;в - пробел после знака препинания
!з - пробел после знака препинания
?з - пробел после знака препинания
координально - правильно будет "кАрдинально
зделал - приставки "З" не существует
зделаю - приставки "З" не существует
зделан - приставки "З" не существует
жы - жи/ши пиши с буквой И
шы - жи/ши пиши с буквой И
Например а - запятая перед "а", "но"
или но - запятая перед "а", "но"