hola miren tengo esta expresion regular que lo que quiero es que encuentre las palabras que empiecen con abc y las demas letras o numeros no importan
seria asi?:
/^[a-z,0-9]^[a-z,0-9]^[a-z,0-9]...*/
| |||
expresion regular en php hola miren tengo esta expresion regular que lo que quiero es que encuentre las palabras que empiecen con abc y las demas letras o numeros no importan seria asi?: /^[a-z,0-9]^[a-z,0-9]^[a-z,0-9]...*/ |
| ||||
Respuesta: expresion regular en php no... debe ser algo así Cita: lee lo siguiente:\b limite de palabra abc que empiece por abc [a-zA-Z0-9]* letras o números \b limite de palabra http://www.forosdelweb.com/f18/aport...s-pcre-646110/
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |
| |||
Respuesta: expresion regular en php |
| |||
Respuesta: expresion regular en php Gracias. miren puse mi expresion regular en el codigo pero no lo encuentra esta bien puesta? lo que quiero buscar en el archivo es esto value='1260549590'/> de ahi es solo el numero, pero si busco solo el numero no lo encuentra ya que como tiene caracteres pegados lo toma como una palabra sola. los ultimo 5 digitos cambian constantemente: function getSource($host,$page) { $archivo = file("http://$host/$page"); reset ($archivo); while (list ($clave, $val) = each ($archivo)) { $cadena=htmlentities($val); $palabra=preg_quote('<\b12605[0-9]*\b>'); if( eregi("[ tnr]+".$palabra."[ tnr]+",$cadena)) { echo "Si existe. $palabra" ; } else { echo 'No existe'; } echo htmlentities($val).'<br>'; }} el problema es que me dice que no esta :( esta algo mal? o para buscarlo debo de hacerlo con esta expresion <\bvalue=.12605[0-9]*\b> Última edición por Alphabravo; 11/12/2009 a las 10:43 |
| |||
Respuesta: expresion regular en php ya le e quitado los <> pero aun asi no lo encuentra si esta bien la expresion regular? o tomo esta otra: \bvalue=.12605[0-9]*\b el valo que tiene que buscar es el numero que esta dentro: value='1260549590'/> |
| ||||
Respuesta: expresion regular en php No entiendo tu expresion regular, primero tienes declarado b que quiere decir que estas buscando la palabra b y luego algo llamado value. Segundo ¿por qué quieres declarar un punto después del símbolo del igual? Tercero el delimitador al principio es \ y luego al final colocas b dando a entender que es un modificador, pero que tenga entendido no existe un modificador b. Lee la guia que te indicó pateketrueke para que puedas entender mejor lo que te quiero decir. Acuerdate que la computadora sigue instrucciones tales como tu le estas indicando, solo tienes que entender como funciona cada valor que estas colocando. El delimitador tiene que ser un solo caracter, no dos caracteres.
__________________ Verifica antes de preguntar. Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos |
| |||
Respuesta: expresion regular en php ok. a es que el punto es para un caracter es que en si lo que quiero que busca en un texto es esto value='1260549590' y el punto decia que es un simbolo, o como le pongo el ' gracias di ls expresion regular queda asi: /1260....../ si funciona? para que me encuentre el numero de arriba los ultimos dijitos que estan en punto van cambiando Última edición por Alphabravo; 11/12/2009 a las 23:00 |
| ||||
Respuesta: expresion regular en php lo que sucede es que debes entender mas tu propia cadena, antes de atacarla con regex... Cita: la expresión casi siempre se toma como literal... solo debes cambiar caracteres y agregar agrupaciones si sabes lo que estas hacen.... y tu también debes saberlo!! /value='(1260\d+)'\/>/
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. Última edición por pateketrueke; 12/12/2009 a las 09:34 |
| |||
Respuesta: expresion regular en php Hola miren la probe pero sigue sin funcionarme algo estoy haciendo mal? este es el php . function getSource($host,$page) { $archivo = file("http://$host/$page"); reset ($archivo); while (list ($clave, $val) = each ($archivo)) { $cadena=htmlentities($val); $palabra=preg_quote("/value='(1260\d+)'\/>/"); if( eregi("[ tnr]+".$palabra."[ tnr]+",$cadena)) { echo "Si existe. $palabra" ; } else { echo 'No existe'; } echo htmlentities($val).'<br>'; }} getSource("localhost","index2.php"); y este es lo que tiene el index2.php <form action='' method='post'> <input name='user' style="-wap-input-format: '*N'" maxlength="19" value=""/><br /> <br /> <textarea rows="2" cols="20" name="msg"></textarea><br /> <input type='hidden' name='t' value='1260636284'/> <input type='submit' value=' Send ' /></form> y cuando hago funcionar el php me imprime esto No existe<form action='' method='post'> No existe<input name='user' style="-wap-input-format: '*N'" maxlength="19" value=""/><br /> <br /> No existe<textarea rows="2" cols="20" name="msg"></textarea><br /> No existe<input type='hidden' name='t' value='1260636284'/> No existe<input type='submit' value=' Send ' /></form> |
| ||||
Respuesta: expresion regular en php claro que estas haciendo "algo" mal!! Código PHP: Código PHP: http://www.forosdelweb.com/f18/aport...s-pcre-646110/ suerte!!
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |
| |||
Respuesta: expresion regular en php lo de $cadena=htmlentities($val); lo pongo para que me imprima el codigo de una web y asi busque la palabra. por que si no como le hago para buscar por codigo web? |
| ||||
Respuesta: expresion regular en php Cita: no tiene sentido lo que dices.. en ningún momento estas imprimiendo el código de la web que dices, solo lo estas leyendo....y como te digo, si usas htmlentitites() va a escaparte el HTML de tu variable... y así queda inutilizado para la expresión, o bien rediseña la expresión.... es la función file() la que realmente obtiene el código de la página que indicas... htmlentitites() ni siquiera imprime, ni te sirve para "buscar" como lo dices... por favor lee el manual de PHP... http://php.net/htmlentities
__________________ Y U NO RTFM? щ(ºдºщ) No atiendo por MP nada que no sea personal. |