<?php
// Grammar Nazi
$text = "Не здеся а Сдесь. Жы шы пиши с буквой и. Координально зделал но не там. Но сделал!Нетжы" ;
$regExp = [
"/.{0,5}((ж|ш)ы).{0,5}/ui" => "Жи ши пиши с буквой И" ,
"/.{0,5}(координально|сдесь|здел(ал|аю|ан)).{0,5}/ui" => "Правильно писать здесь, сделал кардинально" ,
"/.{0,5}([.,:;!?]\S).{0,5}/u" => "Нет пробела после знака препинания" ,
"/.{0,5}([^,] а|[^,] но).{0,5}/u" => "Нет запятой перед предлогами а или но"
] ;
foreach ( $regExp as $key => $value ) {
foreach ( $matches [ 0 ] as $match ) {
echo "{$value} :\n {$match} \n \n " ;
}
}
//echo $matches[0][0][1];
//var_dump($matches);
//echo mb_substr($text,31);//$matches[0][1][1]);
//echo $matches[1][0];
PD9waHAKCi8vIEdyYW1tYXIgTmF6aQplcnJvcl9yZXBvcnRpbmcoLTEpOwptYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKCiR0ZXh0ID0gItCd0LUg0LfQtNC10YHRjyDQsCDQodC00LXRgdGMLiDQltGLINGI0Ysg0L/QuNGI0Lgg0YEg0LHRg9C60LLQvtC5INC4LiDQmtC+0L7RgNC00LjQvdCw0LvRjNC90L4g0LfQtNC10LvQsNC7INC90L4g0L3QtSDRgtCw0LwuINCd0L4g0YHQtNC10LvQsNC7IdCd0LXRgtC20YsiOwokcmVnRXhwID0gWwoJIi8uezAsNX0oKNC2fNGIKdGLKS57MCw1fS91aSIgPT4gItCW0Lgg0YjQuCDQv9C40YjQuCDRgSDQsdGD0LrQstC+0Lkg0JgiLAoJIi8uezAsNX0o0LrQvtC+0YDQtNC40L3QsNC70YzQvdC+fNGB0LTQtdGB0Yx80LfQtNC10Lso0LDQu3zQsNGOfNCw0L0pKS57MCw1fS91aSIgPT4gItCf0YDQsNCy0LjQu9GM0L3QviDQv9C40YHQsNGC0Ywg0LfQtNC10YHRjCwg0YHQtNC10LvQsNC7INC60LDRgNC00LjQvdCw0LvRjNC90L4iLAoJIi8uezAsNX0oWy4sOjshP11cUykuezAsNX0vdSIgPT4gItCd0LXRgiDQv9GA0L7QsdC10LvQsCDQv9C+0YHQu9C1INC30L3QsNC60LAg0L/RgNC10L/QuNC90LDQvdC40Y8iLAoJIi8uezAsNX0oW14sXSDQsHxbXixdINC90L4pLnswLDV9L3UiID0+ICLQndC10YIg0LfQsNC/0Y/RgtC+0Lkg0L/QtdGA0LXQtCDQv9GA0LXQtNC70L7Qs9Cw0LzQuCDQsCDQuNC70Lgg0L3QviIKCV07CiRtYXRjaGVzID0gYXJyYXkoKTsKCgpmb3JlYWNoICgkcmVnRXhwIGFzICRrZXkgPT4gJHZhbHVlKXsKCXByZWdfbWF0Y2hfYWxsKCRrZXksJHRleHQsJG1hdGNoZXMpOwoJZm9yZWFjaCAoJG1hdGNoZXNbMF0gYXMgJG1hdGNoKXsKCQllY2hvICJ7JHZhbHVlfTpcbnskbWF0Y2h9XG5cbiI7Cgl9Cn0KCgovL2VjaG8gJG1hdGNoZXNbMF1bMF1bMV07Ci8vdmFyX2R1bXAoJG1hdGNoZXMpOwovL2VjaG8gbWJfc3Vic3RyKCR0ZXh0LDMxKTsvLyRtYXRjaGVzWzBdWzFdWzFdKTsKLy9lY2hvICRtYXRjaGVzWzFdWzBdOw==