<?php
$string = 'Давайте зделаем корабль! Зделать же несложно!';
$matchPattern = '/(сдесь|координально|здела[люн]|[жш]ы|[чщ]я|[,!?;:]+[\w]|[,](а|но)[\\W])/ui';
$replacements = array('/сдесь/ui' => 'здесь', '/координально/ui' => 'кардинально',
'/здела([люн])/ui' => 'cдела$1',
'/([жш])ы/ui' => '${1}и',
'/([чщ])я/ui' => '${1}а',
'/([,!?;:]+)([\w])/ui' => '$1 $2',
'/[,](а|но)([\\W])/ui' => ', $1$2');
echo "Текст: '$string'\n";
if (preg_match_all($matchPattern, $string, $matches, PREG_SET_ORDER
)) { foreach ($matches as $match) {
echo "\nОшибка в фрагменте: '{$match[1]}'.";
}
} else {
echo "Всё правильно.";
}
?>
PD9waHAKICAgICRtYXRjaGVzID0gYXJyYXkoKTsKICAgICRzdHJpbmcgPSAn0JTQsNCy0LDQudGC0LUg0LfQtNC10LvQsNC10Lwg0LrQvtGA0LDQsdC70YwhINCX0LTQtdC70LDRgtGMINC20LUg0L3QtdGB0LvQvtC20L3QviEnOwogICAgJG1hdGNoUGF0dGVybiA9ICcvKNGB0LTQtdGB0Yx80LrQvtC+0YDQtNC40L3QsNC70YzQvdC+fNC30LTQtdC70LBb0LvRjtC9XXxb0LbRiF3Ri3xb0YfRiV3Rj3xbLCE/OzpdK1tcd118WyxdKNCwfNC90L4pW1xcV10pL3VpJzsKICAgICRyZXBsYWNlbWVudHMgPSBhcnJheSgnL9GB0LTQtdGB0YwvdWknID0+ICfQt9C00LXRgdGMJywKICAgICAgICAgICAgICAgICAgICAgICAgICAnL9C60L7QvtGA0LTQuNC90LDQu9GM0L3Qvi91aScgPT4gJ9C60LDRgNC00LjQvdCw0LvRjNC90L4nLAogICAgICAgICAgICAgICAgICAgICAgICAgICcv0LfQtNC10LvQsChb0LvRjtC9XSkvdWknID0+ICdj0LTQtdC70LAkMScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy8oW9C20YhdKdGLL3VpJyA9PiAnJHsxfdC4JywKICAgICAgICAgICAgICAgICAgICAgICAgICAnLyhb0YfRiV0p0Y8vdWknID0+ICckezF90LAnLAogICAgICAgICAgICAgICAgICAgICAgICAgICcvKFssIT87Ol0rKShbXHddKS91aScgPT4gJyQxICQyJywKICAgICAgICAgICAgICAgICAgICAgICAgICAnL1ssXSjQsHzQvdC+KShbXFxXXSkvdWknID0+ICcsICQxJDInKTsKCgogICAgZWNobyAi0KLQtdC60YHRgjogJyRzdHJpbmcnXG4iOwoKICAgIGlmIChwcmVnX21hdGNoX2FsbCgkbWF0Y2hQYXR0ZXJuLCAkc3RyaW5nLCAkbWF0Y2hlcywgUFJFR19TRVRfT1JERVIpKSB7CiAgICAJZm9yZWFjaCAoJG1hdGNoZXMgYXMgJG1hdGNoKSB7CiAgICAJICBlY2hvICJcbtCe0YjQuNCx0LrQsCDQsiDRhNGA0LDQs9C80LXQvdGC0LU6ICd7JG1hdGNoWzFdfScuIjsKICAgIAl9CgogICAgCWVjaG8gIlxuXG7QmNGB0L/RgNCw0LLQu9C10L3QvdGL0Lkg0YLQtdC60YHRgjogJyIucHJlZ19yZXBsYWNlKGFycmF5X2tleXMoJHJlcGxhY2VtZW50cyksIGFycmF5X3ZhbHVlcygkcmVwbGFjZW1lbnRzKSwgJHN0cmluZykuIiciOwogICAgfSBlbHNlIHsKICAgIAllY2hvICLQktGB0ZEg0L/RgNCw0LLQuNC70YzQvdC+LiI7CiAgICB9Cj8+