Foros del Web » Programando para Internet » PHP »

Saber si un token es un caracter

Estas en el tema de Saber si un token es un caracter en el foro de PHP en Foros del Web. Buenas. Actualmente tengo una función provisoria que me permite saber si un token que le paso como argumento es un caracter. La función es esta: ...
  #1 (permalink)  
Antiguo 07/01/2009, 12:20
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Saber si un token es un caracter

Buenas. Actualmente tengo una función provisoria que me permite saber si un token que le paso como argumento es un caracter. La función es esta:

function isChar($char)
{
return preg_match('/[a-zA-Z]/',$char);
}

Pero ahora, estoy haciendo que las pruebas se asemejen aún más a lo que va a ser en la realidad y necesito que también me reconozca como caracteres a tokens como á, é, í, ñ, Ç o cualquier otra letra con la que se pueda formar un nombre, apellido o lugar.
Intente hacerlo devolviendo el código ascii de cada caracter, pero los caracteres con código superior a 127, la función ord siempre me devuelve 195, por lo tanto no me sirve. Además, ando buscando una forma más abreviada, limpia y efectiva, ya que de esta forma tengo que realizar bastante comprobaciones para ver dentro de que grupo cae el caracter.
Saludos.
__________________
Add, never Remove
  #2 (permalink)  
Antiguo 07/01/2009, 13:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Saber si un token es un caracter

mmm... una observación...

tu expresión es incorrecta... ya que implica solo algún carácter de entre a-zA-Z ... y no que toda la cadena o carácter, sea "carácter" pues....

deberías ser así.... /^[a-zA-Z]+$/

ahora, si no me equivoco, esta misma expresión debería permitirte también acentos, tildes, etc...


dime ¿ya has probado antes tu expresión??

¿ya ha fallado??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 07/01/2009, 13:31
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Respuesta: Saber si un token es un caracter

Si, no me reconoce como caracteres. Con respecto a lo otro que decís, la función no toma una cadena como argumento, sino que toma solamente un caracter, como a, b, c...é, í.
__________________
Add, never Remove
  #4 (permalink)  
Antiguo 07/01/2009, 19:29
 
Fecha de Ingreso: marzo-2005
Mensajes: 1.418
Antigüedad: 19 años
Puntos: 9
Respuesta: Saber si un token es un caracter

De esta forma pude solucionarlo:

Código php:
Ver original
  1. function isChar($char)
  2. {
  3.     $tomatch = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ";
  4.     return (preg_match('/[a-zA-Z]/',$char)) ||(strpos($tomatch, $char) !== false);
  5. }
__________________
Add, never Remove
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:09.