Düzeltebildiği hatalar:
1. Noktalama işaretlerinin bir önceki kelimeye bitişik yazılmaması.
2. Noktalama işaretlerinden sonra bir boşluk bırakılmaması.
3. Üç nokta yerine 4, 5 ya da daha fazla nokta konulması.
4. Metnin en sonunda üç nokta kullanılması.
5. Metnin içinde herhangi bir yerde birden fazla boşluk bırakılması.
6. Paragraflar arası boşluk bırakmak için boş satırlar bırakılması.
7. Noktadan sonra cümleye küçük harfle başlanması.
function noktalama($metin)
{
// Mustafa Dokumacı tarafından yazılmıştır...
return stripslashes(preg_replace(array(
'~([^\s.,;:!?]{2,})\s+([.,;:!?])~u',
'~([^\s.,;:!?]{2,})([.,;:!?]+)([^\s.0-9"\'„”’›»])~u',
'~(\s)+[.,;:!?]+\s+~u',
'~\.{4,}~u',
'~\.{3,}\s*$~u',
'~^\s+~um',
'~\s+$~um',
'~\r+~u',
'~\n{2,}~u',
'~\s{2,}~u',
'~((ht|f)tps?: //|[-a-z0-9]{2,}\. )([-a-z0-9/]{2,}\. )+[-a-z0-9]{2,4}~uie',
'~(^|\s)([-a-z0-9]{2,}\. )+(com|de|net|co\.[a-z]{2}|org|info|it|biz|nl|cc|tv|com\.[a-z]{2}|ch|br|dk|us|ca|ws|be|cz|no|at|fr|pl|ru|net\.[a-z]{2})(/[-a-z0-9.]+)*([\s.0-9"\'„”’›»]|$)~uie',
'~(^|[^0-9.?!]{2,}[.?!]\s)(["\'“‘‹«]?\s?)([^\s])~ue'
), array(
'$1$2',
'$1$2 $3',
'$1',
'...',
'.',
'',
'',
"\n",
"\n",
' ',
'strtr("$0", array(": "=>":", ". "=>"."))',
'strtr("$0", array(": "=>":", ". "=>"."))',
"'$1$2' . mb_strtoupper('$3')"
), $metin));
}
Hiç yorum yok:
Yorum Gönder
Sitemizi ziyaret ettiğiniz için teşekkür ederiz
Php Dersleri