Para que sirve:
-> Un texto en el que se requiere capitalizar sola la primer letra de una cadena, También la que es seguida de signos de puntuación cualesquiera como: (punto, dos puntos, signo de admiración, interrogación, salto de linea, etc...)
-> Cuando el uso de MAYUSCULAS ES EXCESIVO
-> No TRANSFORMA palabras bien capitalizadas por el usuario, como las siglas de un objeto: Por ejemplo: E.U.A., U.N.A.M. y las que contengan esta estructura se conservarán igual.
-> También los sustantivos propios bien capitalizados no sufrirán transformación alguna.
Lo hice lo más sencillo, corto y fácil posible.
Código PHP:
Ver original
class capitalization { public function hasCapitalized($word) { return true; return true; } public function isEndOfSentence($subject) { return true; } public function capitaliza($text) { $bean = true; foreach ($words as $key => $value) { if ($bean) else $bean = (isEndOfSentence($value) ? true : false); } return $words; } }
ejemplo de uso para los que no saben POO
Código PHP:
Ver original
$obj = new capitalization; $text = "estE TExTo TIENe uN MAL manEjo DE MinUsCulas y MayusCulas. el texto seRa CAPiTALIZaDO. la Primer PalAbra que EstA DespuEs de uN puNto o SalTo de LINEa \n será CapitaLizada. palabras COMPLETAMENTE EN MAYUSCULAS son transFormAdas a MinusCulas, solo las PalabrAs bien CapitaLizadas como los SUSTANtiVos PropIos: México, España, Brazil, etc... se conservan ASi, tambiEn se conserva CapitalizACION en AbrebiaTURAS COMO E.U.A.";
IMPRIME:
Cita:
Un Saludo.Array
(
[0] => Este
[1] => texto
[2] => tiene
[3] => un
[4] => mal
[5] => manejo
[6] => de
[7] => minusculas
[8] => y
[9] => mayusculas.
[10] => El
[11] => texto
[12] => sera
[13] => capitalizado.
[14] => La
[15] => Primer
[16] => palabra
[17] => que
[18] => esta
[19] => despues
[20] => de
[21] => un
[22] => punto
[23] => o
[24] => salto
[25] => de
[26] => linea
[27] =>
[28] => Será
[29] => capitalizada.
[30] => Palabras
[31] => completamente
[32] => en
[33] => mayusculas
[34] => son
[35] => transformadas
[36] => a
[37] => minusculas,
[38] => solo
[39] => las
[40] => palabras
[41] => bien
[42] => capitalizadas
[43] => como
[44] => los
[45] => sustantivos
[46] => propios:
[47] => México,
[48] => España,
[49] => Brazil,
[50] => etc...
[51] => Se
[52] => conservan
[53] => asi,
[54] => tambien
[55] => se
[56] => conserva
[57] => capitalizacion
[58] => En
[59] => abrebiaturas
[60] => como
[61] => E.U.A.
)
(
[0] => Este
[1] => texto
[2] => tiene
[3] => un
[4] => mal
[5] => manejo
[6] => de
[7] => minusculas
[8] => y
[9] => mayusculas.
[10] => El
[11] => texto
[12] => sera
[13] => capitalizado.
[14] => La
[15] => Primer
[16] => palabra
[17] => que
[18] => esta
[19] => despues
[20] => de
[21] => un
[22] => punto
[23] => o
[24] => salto
[25] => de
[26] => linea
[27] =>
[28] => Será
[29] => capitalizada.
[30] => Palabras
[31] => completamente
[32] => en
[33] => mayusculas
[34] => son
[35] => transformadas
[36] => a
[37] => minusculas,
[38] => solo
[39] => las
[40] => palabras
[41] => bien
[42] => capitalizadas
[43] => como
[44] => los
[45] => sustantivos
[46] => propios:
[47] => México,
[48] => España,
[49] => Brazil,
[50] => etc...
[51] => Se
[52] => conservan
[53] => asi,
[54] => tambien
[55] => se
[56] => conserva
[57] => capitalizacion
[58] => En
[59] => abrebiaturas
[60] => como
[61] => E.U.A.
)
=========================================
P:D:
Para añadir más signos de puntuación, los cuales son tomados como semilla para indicar que la palabra siguiente a esta será capitalizada.
situarse en la linea 11 de la clase
Código PHP:
if (preg_match("/^(.)*[\.\x0A]+$/", $subject))