<?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 "Всё правильно." ;
}
?>
PD9waHAKICAgICRtYXRjaGVzID0gYXJyYXkoKTsKICAgICRzdHJpbmcgPSAn0K3RgtC+INGB0LTQtdGB0Ywg0LrQvtC+0YDQtNC40L3QsNC70YzQvdC+INC80L7RgNC2INC30LTQtdC70LDQuyDQuNC3INGH0Y/RidC4INC20YvRgNC90YPRjj8h0YjQu9GP0L/RgyzQsCDQutC+0YIg0YHQuNC00LXQuz8hJzsKICAgICRtYXRjaFBhdHRlcm4gPSAnLyjRgdC00LXRgdGMfNC60L7QvtGA0LTQuNC90LDQu9GM0L3QvnzQt9C00LXQu9CwW9C70Y7QvV18W9C20Yhd0Yt8W9GH0Yld0Y98WywhPzs6XStbXHddfFssXSjQsHzQvdC+KVtcXFddKS91aSc7CiAgICAkcmVwbGFjZW1lbnRzID0gYXJyYXkoJy/RgdC00LXRgdGML3VpJyA9PiAn0LfQtNC10YHRjCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy/QutC+0L7RgNC00LjQvdCw0LvRjNC90L4vdWknID0+ICfQutCw0YDQtNC40L3QsNC70YzQvdC+JywKICAgICAgICAgICAgICAgICAgICAgICAgICAnL9C30LTQtdC70LAoW9C70Y7QvV0pL3VpJyA9PiAnY9C00LXQu9CwJDEnLAogICAgICAgICAgICAgICAgICAgICAgICAgICcvKFvQttGIXSnRiy91aScgPT4gJyR7MX3QuCcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy8oW9GH0YldKdGPL3VpJyA9PiAnJHsxfdCwJywKICAgICAgICAgICAgICAgICAgICAgICAgICAnLyhbLCE/OzpdKykoW1x3XSkvdWknID0+ICckMSAkMicsCiAgICAgICAgICAgICAgICAgICAgICAgICAgJy9bLF0o0LB80L3QvikoW1xcV10pL3VpJyA9PiAnLCAkMSQyJyk7CgoKICAgIGVjaG8gItCi0LXQutGB0YI6ICckc3RyaW5nJ1xuIjsKCiAgICBpZiAocHJlZ19tYXRjaF9hbGwoJG1hdGNoUGF0dGVybiwgJHN0cmluZywgJG1hdGNoZXMsIFBSRUdfU0VUX09SREVSKSkgewogICAgCWZvcmVhY2ggKCRtYXRjaGVzIGFzICRtYXRjaCkgewogICAgCSAgZWNobyAiXG7QntGI0LjQsdC60LAg0LIg0YTRgNCw0LPQvNC10L3RgtC1OiAneyRtYXRjaFsxXX0nLiI7CiAgICAJfQoKICAgIAllY2hvICJcblxu0JjRgdC/0YDQsNCy0LvQtdC90L3Ri9C5INGC0LXQutGB0YI6ICciLnByZWdfcmVwbGFjZShhcnJheV9rZXlzKCRyZXBsYWNlbWVudHMpLCBhcnJheV92YWx1ZXMoJHJlcGxhY2VtZW50cyksICRzdHJpbmcpLiInIjsKICAgIH0gZWxzZSB7CiAgICAJZWNobyAi0JLRgdGRINC/0YDQsNCy0LjQu9GM0L3Qvi4iOwogICAgfQo/Pg==