<?php
$input = <<<EOF
Сдесь есть много вариантов Lorem Ipsum но большынство из них имеет не всегда
приемлемые модификации, например, юмористические вставки или слова, которые
даже отдалённо не напоминают латынь. Если вам нужен Lorem Ipsum для
серьёзного проекта, вы наверняка не хотите какой-нибудь шутки, скрытой
в середине абзаца.Также все другие известные генераторы Lorem Ipsum
используют один и тот же текст, который они просто повторяют, пока не
достигнут нужный объём. Это делает предлагаемый здесь генератор единственным
настоящим Lorem Ipsum генератором. Он использует словарь из более чем
200 латинских слов, а также набор моделей предложений. В результате
сгенерированный Lorem Ipsum выглядит правдоподобно,не имеет повторяющихся
абзацей или "невозможных" слов.
EOF ;
"rulePattern" => "/(\b\w+ ){0,2}\w*[.,;:!?]\w+ (\b\w+ ){0,2}/ui" ,
"ruleText" => "нет пробела после знаков препинания"
) ,
"rulePattern" => "/(\b\w+ ){0,3}\w*[жш]ы\w* (\b\w+ ){0,3}/ui" ,
"ruleText" => "«жи» или «ши» написано с буквой ы"
) ,
"rulePattern" => "/(\b\w+ ){0,2}\b(координально|сдесь|здел(ал|аю|ан))\b (\b\w+ ){0,3}/ui" ,
"ruleText" => "в тексте есть слово «координально» или «сдесь», «зделал», «зделаю», «зделан»"
) ,
"rulePattern" => "/(\b\w+ ){0,1}\w* +(a|но)[.,;:!? ]+\w* (\b\w+ ){0,1}/ui" ,
"ruleText" => "в тексте есть слова «а» или «но» без запятой перед ними"
) ,
) ;
foreach ( $regexpRules as $rule ) {
echo "\n Проверка на правило: " . $rule [ 'ruleText' ] . "\n " ;
foreach ( $matches [ 0 ] as $error ) {
echo "Найдена ошибка: {$error} \n " ;
}
} else {
echo "Ошибок не найдено\n " ;
}
}
PD9waHAKZXJyb3JfcmVwb3J0aW5nKC0xKTsKCiRpbnB1dCA9IDw8PEVPRgrQodC00LXRgdGMINC10YHRgtGMINC80L3QvtCz0L4g0LLQsNGA0LjQsNC90YLQvtCyIExvcmVtIElwc3VtINC90L4g0LHQvtC70YzRiNGL0L3RgdGC0LLQviDQuNC3INC90LjRhSDQuNC80LXQtdGCINC90LUg0LLRgdC10LPQtNCwIArQv9GA0LjQtdC80LvQtdC80YvQtSDQvNC+0LTQuNGE0LjQutCw0YbQuNC4LCDQvdCw0L/RgNC40LzQtdGALCDRjtC80L7RgNC40YHRgtC40YfQtdGB0LrQuNC1INCy0YHRgtCw0LLQutC4INC40LvQuCDRgdC70L7QstCwLCDQutC+0YLQvtGA0YvQtQrQtNCw0LbQtSDQvtGC0LTQsNC70ZHQvdC90L4g0L3QtSDQvdCw0L/QvtC80LjQvdCw0Y7RgiDQu9Cw0YLRi9C90YwuINCV0YHQu9C4INCy0LDQvCDQvdGD0LbQtdC9IExvcmVtIElwc3VtINC00LvRjyAK0YHQtdGA0YzRkdC30L3QvtCz0L4g0L/RgNC+0LXQutGC0LAsINCy0Ysg0L3QsNCy0LXRgNC90Y/QutCwINC90LUg0YXQvtGC0LjRgtC1INC60LDQutC+0Lkt0L3QuNCx0YPQtNGMINGI0YPRgtC60LgsINGB0LrRgNGL0YLQvtC5IArQsiDRgdC10YDQtdC00LjQvdC1INCw0LHQt9Cw0YbQsC7QotCw0LrQttC1INCy0YHQtSDQtNGA0YPQs9C40LUg0LjQt9Cy0LXRgdGC0L3Ri9C1INCz0LXQvdC10YDQsNGC0L7RgNGLIExvcmVtIElwc3VtIArQuNGB0L/QvtC70YzQt9GD0Y7RgiDQvtC00LjQvSDQuCDRgtC+0YIg0LbQtSDRgtC10LrRgdGCLCDQutC+0YLQvtGA0YvQuSDQvtC90Lgg0L/RgNC+0YHRgtC+INC/0L7QstGC0L7RgNGP0Y7Rgiwg0L/QvtC60LAg0L3QtSAK0LTQvtGB0YLQuNCz0L3Rg9GCINC90YPQttC90YvQuSDQvtCx0YrRkdC8LiDQrdGC0L4g0LTQtdC70LDQtdGCINC/0YDQtdC00LvQsNCz0LDQtdC80YvQuSDQt9C00LXRgdGMINCz0LXQvdC10YDQsNGC0L7RgCDQtdC00LjQvdGB0YLQstC10L3QvdGL0LwgCtC90LDRgdGC0L7Rj9GJ0LjQvCBMb3JlbSBJcHN1bSDQs9C10L3QtdGA0LDRgtC+0YDQvtC8LiDQntC9INC40YHQv9C+0LvRjNC30YPQtdGCINGB0LvQvtCy0LDRgNGMINC40Lcg0LHQvtC70LXQtSDRh9C10LwgCjIwMCDQu9Cw0YLQuNC90YHQutC40YUg0YHQu9C+0LIsINCwINGC0LDQutC20LUg0L3QsNCx0L7RgCDQvNC+0LTQtdC70LXQuSDQv9GA0LXQtNC70L7QttC10L3QuNC5LiDQkiDRgNC10LfRg9C70YzRgtCw0YLQtSAK0YHQs9C10L3QtdGA0LjRgNC+0LLQsNC90L3Ri9C5IExvcmVtIElwc3VtINCy0YvQs9C70Y/QtNC40YIg0L/RgNCw0LLQtNC+0L/QvtC00L7QsdC90L4s0L3QtSDQuNC80LXQtdGCINC/0L7QstGC0L7RgNGP0Y7RidC40YXRgdGPIArQsNCx0LfQsNGG0LXQuSDQuNC70LggItC90LXQstC+0LfQvNC+0LbQvdGL0YUiINGB0LvQvtCyLgpFT0Y7CiRyZWdleHBSdWxlcyA9IGFycmF5KAoJYXJyYXkoCgkJInJ1bGVQYXR0ZXJuIj0+Ii8oXGJcdysgKXswLDJ9XHcqWy4sOzohP11cdysgKFxiXHcrICl7MCwyfS91aSIsCgkJInJ1bGVUZXh0Ij0+ItC90LXRgiDQv9GA0L7QsdC10LvQsCDQv9C+0YHQu9C1INC30L3QsNC60L7QsiDQv9GA0LXQv9C40L3QsNC90LjRjyIKCQkpLAoJYXJyYXkoCgkJInJ1bGVQYXR0ZXJuIj0+Ii8oXGJcdysgKXswLDN9XHcqW9C20Yhd0YtcdyogKFxiXHcrICl7MCwzfS91aSIsCgkJInJ1bGVUZXh0Ij0+IsKr0LbQuMK7INC40LvQuCDCq9GI0LjCuyDQvdCw0L/QuNGB0LDQvdC+INGBINCx0YPQutCy0L7QuSDRiyIKCQkpLAoJYXJyYXkoCgkJInJ1bGVQYXR0ZXJuIj0+Ii8oXGJcdysgKXswLDJ9XGIo0LrQvtC+0YDQtNC40L3QsNC70YzQvdC+fNGB0LTQtdGB0Yx80LfQtNC10Lso0LDQu3zQsNGOfNCw0L0pKVxiIChcYlx3KyApezAsM30vdWkiLAoJCSJydWxlVGV4dCI9PiLQsiDRgtC10LrRgdGC0LUg0LXRgdGC0Ywg0YHQu9C+0LLQviDCq9C60L7QvtGA0LTQuNC90LDQu9GM0L3QvsK7INC40LvQuCDCq9GB0LTQtdGB0YzCuywgwqvQt9C00LXQu9Cw0LvCuywgwqvQt9C00LXQu9Cw0Y7CuywgwqvQt9C00LXQu9Cw0L3CuyIKCQkpLAoJYXJyYXkoCgkJInJ1bGVQYXR0ZXJuIj0+Ii8oXGJcdysgKXswLDF9XHcqICsoYXzQvdC+KVsuLDs6IT8gXStcdyogKFxiXHcrICl7MCwxfS91aSIsCgkJInJ1bGVUZXh0Ij0+ItCyINGC0LXQutGB0YLQtSDQtdGB0YLRjCDRgdC70L7QstCwIMKr0LDCuyDQuNC70LggwqvQvdC+wrsg0LHQtdC3INC30LDQv9GP0YLQvtC5INC/0LXRgNC10LQg0L3QuNC80LgiCgkJKSwKCSk7CiRtYXRjaGVzID0gYXJyYXkoKTsKZm9yZWFjaCgkcmVnZXhwUnVsZXMgYXMgJHJ1bGUpewoJZWNobyAiXG7Qn9GA0L7QstC10YDQutCwINC90LAg0L/RgNCw0LLQuNC70L46ICIuJHJ1bGVbJ3J1bGVUZXh0J10uIlxuIjsKCWlmIChwcmVnX21hdGNoX2FsbCgkcnVsZVsncnVsZVBhdHRlcm4nXSwgJGlucHV0LCAkbWF0Y2hlcykpewoJCWZvcmVhY2goJG1hdGNoZXNbMF0gYXMgJGVycm9yKXsKCQkJZWNobyAi0J3QsNC50LTQtdC90LAg0L7RiNC40LHQutCwOiB7JGVycm9yfVxuIjsKCQl9Cgl9IGVsc2UgewoJCWVjaG8gItCe0YjQuNCx0L7QuiDQvdC1INC90LDQudC00LXQvdC+XG4iOwoJfQp9