<?php
$text = 'Пожалуйста,никогда' ;
'/\S+(,|\.|;|:|\\?|!)[а-Я]+/ui' => "После точки, запятой, двоеточия, точки с запятой, восклицательного и вопросительного знаков нужно ставить пробел." ,
'/(И|и)ме(л(а|о|и)?|е(те?|шь|м)|ю(т|щ(ий|ая))?|й(те)?|ть)\sввиду/ui' => "«Ввиду» пишется слитно тогда, когда его можно заменить предлогом «из-за»." ,
'/\S+(\.|\\?|!)(\s)?[а-я]+/ui' => "Предложение должно начинаться с большой буквы." ,
'/\S*(ж|ш)ы\S*/ui' => "«жи» «ши» пиши с «и»." ,
'/(что|чуть|вряд)-?ли/ui' => "Частица «ли» всегда отделяется пробелом." ,
'/[^,]\s(а|но)\s\S*/ui' => "Перед союзами «а» и «но» нужно ставить запятую." ,
'/\sздел\S+/ui' => "Приставки «з» не существует." ,
'/\sлож(и(ть|л(и|а)?)?|ат)(\s|\.)/ui' => "Такого слова не существует, есть слово «класть»" ,
) ;
$errorsCounter = 0 ;
foreach ( $arrayOfRegexps as $regexp => $errorDescription )
{
foreach ( $matches [ 0 ] as $value )
{
echo "\n Здесь ошибка: " . $value . "\n Описание: " . $errorDescription . "\n " ;
}
}
echo "\n Всего найдено ошибок: {$errorsCounter} \n " ;
PD9waHAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKbWJfaW50ZXJuYWxfZW5jb2RpbmcoJ3V0Zi04Jyk7CgokdGV4dCA9ICfQn9C+0LbQsNC70YPQudGB0YLQsCzQvdC40LrQvtCz0LTQsCc7CiRhcnJheU9mUmVnZXhwcyA9IGFycmF5KAoJJy9cUysoLHxcLnw7fDp8XFw/fCEpW9CwLdCvXSsvdWknID0+ICLQn9C+0YHQu9C1INGC0L7Rh9C60LgsINC30LDQv9GP0YLQvtC5LCDQtNCy0L7QtdGC0L7Rh9C40Y8sINGC0L7Rh9C60Lgg0YEg0LfQsNC/0Y/RgtC+0LksINCy0L7RgdC60LvQuNGG0LDRgtC10LvRjNC90L7Qs9C+INC4INCy0L7Qv9GA0L7RgdC40YLQtdC70YzQvdC+0LPQviDQt9C90LDQutC+0LIg0L3Rg9C20L3QviDRgdGC0LDQstC40YLRjCDQv9GA0L7QsdC10LsuIiwKCScvKNCYfNC4KdC80LUo0Lso0LB80L580LgpP3zQtSjRgtC1P3zRiNGMfNC8KXzRjijRgnzRiSjQuNC5fNCw0Y8pKT980Lko0YLQtSk/fNGC0YwpXHPQstCy0LjQtNGDL3VpJyA9PiAiwqvQktCy0LjQtNGDwrsg0L/QuNGI0LXRgtGB0Y8g0YHQu9C40YLQvdC+INGC0L7Qs9C00LAsINC60L7Qs9C00LAg0LXQs9C+INC80L7QttC90L4g0LfQsNC80LXQvdC40YLRjCDQv9GA0LXQtNC70L7Qs9C+0LwgwqvQuNC3LdC30LDCuy4iLAoJJy9cUysoXC58XFw/fCEpKFxzKT9b0LAt0Y9dKy91aScgPT4gItCf0YDQtdC00LvQvtC20LXQvdC40LUg0LTQvtC70LbQvdC+INC90LDRh9C40L3QsNGC0YzRgdGPINGBINCx0L7Qu9GM0YjQvtC5INCx0YPQutCy0YsuIiwKCScvXFMqKNC2fNGIKdGLXFMqL3VpJyA9PiAiwqvQttC4wrsgwqvRiNC4wrsg0L/QuNGI0Lgg0YEgwqvQuMK7LiIsCgknLyjRh9GC0L580YfRg9GC0Yx80LLRgNGP0LQpLT/Qu9C4L3VpJyA9PiAi0KfQsNGB0YLQuNGG0LAgwqvQu9C4wrsg0LLRgdC10LPQtNCwINC+0YLQtNC10LvRj9C10YLRgdGPINC/0YDQvtCx0LXQu9C+0LwuIiwKCScvW14sXVxzKNCwfNC90L4pXHNcUyovdWknID0+ICLQn9C10YDQtdC0INGB0L7RjtC30LDQvNC4IMKr0LDCuyDQuCDCq9C90L7CuyDQvdGD0LbQvdC+INGB0YLQsNCy0LjRgtGMINC30LDQv9GP0YLRg9GOLiIsCgknL1xz0LfQtNC10LtcUysvdWknID0+ICLQn9GA0LjRgdGC0LDQstC60LggwqvQt8K7INC90LUg0YHRg9GJ0LXRgdGC0LLRg9C10YIuIiwKCScvXHPQu9C+0LYo0Lgo0YLRjHzQuyjQuHzQsCk/KT980LDRgikoXHN8XC4pL3VpJyA9PiAi0KLQsNC60L7Qs9C+INGB0LvQvtCy0LAg0L3QtSDRgdGD0YnQtdGB0YLQstGD0LXRgiwg0LXRgdGC0Ywg0YHQu9C+0LLQviDCq9C60LvQsNGB0YLRjMK7IiwKKTsKCiRtYXRjaGVzID0gYXJyYXkoKTsKJGVycm9yc0NvdW50ZXIgPSAwOwoKZm9yZWFjaCAoJGFycmF5T2ZSZWdleHBzIGFzICRyZWdleHAgPT4gJGVycm9yRGVzY3JpcHRpb24pCnsKCSRlcnJvcnNDb3VudGVyICs9IHByZWdfbWF0Y2hfYWxsKCRyZWdleHAsICR0ZXh0LCAkbWF0Y2hlcyk7CgoJZm9yZWFjaCAoJG1hdGNoZXNbMF0gYXMgJHZhbHVlKSAKCXsKCQllY2hvICJcbtCX0LTQtdGB0Ywg0L7RiNC40LHQutCwOiAiIC4gJHZhbHVlIC4gIlxu0J7Qv9C40YHQsNC90LjQtTogIiAuICRlcnJvckRlc2NyaXB0aW9uIC4gIlxuIjsKCX0KfQoKZWNobyAiXG7QktGB0LXQs9C+INC90LDQudC00LXQvdC+INC+0YjQuNCx0L7QujogeyRlcnJvcnNDb3VudGVyfVxuIjsK