M6 Posted May 19, 2006 at 04:06 PM Report #28315 Posted May 19, 2006 at 04:06 PM Para quem necessita de trabalhar com expressões regulares tem aqui um tutorial sobre o assunto. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
Gurzi Posted July 31, 2006 at 06:24 PM Report #41377 Posted July 31, 2006 at 06:24 PM Um capítulo do meu livro falava sobre isso, mas nunca cheguei a perceber qual a sua função.. Conheces algum exemplo prático em que seja preciso usar isto ? Abraço
kingless Posted August 1, 2006 at 03:33 AM Report #41442 Posted August 1, 2006 at 03:33 AM Um capítulo do meu livro falava sobre isso, mas nunca cheguei a perceber qual a sua função.. Conheces algum exemplo prático em que seja preciso usar isto ? Abraço Pode servir para verificar se um email é valido... E muitas outras coisas MUITAS MESMO..
completo77 Posted August 2, 2006 at 11:09 PM Report #41838 Posted August 2, 2006 at 11:09 PM Um capítulo do meu livro falava sobre isso, mas nunca cheguei a perceber qual a sua função.. Conheces algum exemplo prático em que seja preciso usar isto ? Abraço Não sei muito sobre Regular Expressions. Só as uso em validação de formulários com javascript. Dá para validar (ou invalidar) a informação que inseres nos formularios. Como já disseram pode ser usado para ver se o que inseres num campo de email PODE corresponde r a um email. Se não inserires uma sequencia de caracteres, seguida de uma arroba, seguida de uma sequencia de caracteres de certeza que não vai ser um email válido. Outro exemplo é validar números. Imagina que tens um campo em que queres que metam só algarismos. Se as pessoas meterem outros caracteres vai ser invalidado. Imagina que queres validar um código postal portugues: tem de ser uma sequencia de 4 algarismos seguidos de um traço, seguidos de 3 algarismos. Da para fazer outras coisas alem da validação, mas nao sei. Alguem me explica para que é que serve a porra do XML ?
Triton Posted August 3, 2006 at 07:12 AM Report #41875 Posted August 3, 2006 at 07:12 AM As regular expressions (regexp) dão para fazer mesmo muita coisa, maioritariamente a ver com pattern matching, o que depois pode ser para validação de dados como já foi dito. <3 life
Drone Posted August 4, 2006 at 12:16 AM Report #42094 Posted August 4, 2006 at 12:16 AM Para quem necessita de trabalhar com expressões regulares tem aqui um tutorial sobre o assunto. Muito bom post M6, eu tinha um site sobre expressoes regulares mas este é muito melhor 😛 GG
KTachyon Posted August 4, 2006 at 12:59 AM Report #42095 Posted August 4, 2006 at 12:59 AM Um capítulo do meu livro falava sobre isso, mas nunca cheguei a perceber qual a sua função.. Conheces algum exemplo prático em que seja preciso usar isto ? Abraço As ERs servem para reconhecimento de cadeias. Utilizado na criação de compiladores. “There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.” -- Tony Hoare
Gurzi Posted August 5, 2006 at 04:07 PM Report #42482 Posted August 5, 2006 at 04:07 PM Bem estava aqui a ler isso, ja tinha isso printado à uns tempos mas já não me lembrava de nada disto, ora se eu quiser fazer a validação de um email que função aconselham ? a preg_match ou ereg ? é que qualquer uma usa a $registos = array(); e eu não quero guardar nada, quero só ver se está bem introduzido o email ora seria mais ou menos algo do género [A-z]{6,20}\@[A-z]{1,10}\.[A-z]{2,4} seria ?
kingless Posted August 5, 2006 at 04:44 PM Report #42487 Posted August 5, 2006 at 04:44 PM Os Arrays não servem bem para guardar, servem mais para agrupar valores... o preg_match cria um array porque o REGEX divide a string em varias metades e ele precisa agrupar por isso coloca num array. Existem varias expressões regulares para verificar se um email é valido... quanto a função aconselho-te a utilizar eregi(); podes utilizar preg_match(); e ereg(): mas eu prefiro eregi(): porque é case insensitive não preciso de adicionar "i" <?php $email = "meu_email@mail.com"; if(eregi( '^[a-z0-9\._\-]+\@+[a-z0-9\._\-]+\.[a-z]+$', $email)) { echo "o email é valido"; } ?> Se quiseres mais informações sobre REGEX tens aqui um tutorial http://weblogtoolscollection.com/regex/regex.php mas só que está em inglês. Cumps 😉
Gurzi Posted August 5, 2006 at 10:45 PM Report #42520 Posted August 5, 2006 at 10:45 PM Uma pergunta, não estarás a complicar de mais com este código que destes ? <?php $email = "meu_email@mail.com"; if(eregi( '^[a-z0-9\._\-]+\@+[a-z0-9\._\-]+\.[a-z]+$', $email)) { echo "o email é valido"; } ?> e porque é que tenho que definir a variável $email ? só quero fazer uma comparaçao a ver se ele segue os requisitos dados pelas expressões regulares...
AriOps Posted August 5, 2006 at 11:05 PM Report #42522 Posted August 5, 2006 at 11:05 PM tens de ter qualquer coisa de onde comparar, ele pôs uma variável. tu numa verificação prática deves usar um $_POST, é a mesma coisa. Cumps Daniel Correia
Gurzi Posted August 5, 2006 at 11:11 PM Report #42523 Posted August 5, 2006 at 11:11 PM Podes explicar detalhadamente o funcionamento dessa expressão ? é que eu percebo tudo menos a parte do \._\-
AriOps Posted August 5, 2006 at 11:15 PM Report #42524 Posted August 5, 2006 at 11:15 PM eu não sei se é porque nunca usei, mas acho que deve ser para incluir o ".", o "_" e o "-" nos caracteres disponíveis. Cumps Daniel Correia
kingless Posted August 5, 2006 at 11:21 PM Report #42525 Posted August 5, 2006 at 11:21 PM Podes explicar detalhadamente o funcionamento dessa expressão ? é que eu percebo tudo menos a parte do \._\- O '.' é um modificar valido por isso tens que escapar para que se torne numa string e fica assim \. e mesmo acontece com \- quando leres aquele tutorial que eu te dei vais entender porquê que tem que se utilizar \. \- \@ etc...
Gurzi Posted August 5, 2006 at 11:39 PM Report #42528 Posted August 5, 2006 at 11:39 PM Hmm, nice , não ficaria mais completo assim ? <?php $email = "meu_email@mail.com"; if(eregi( '^[a-z0-9\._\-]+\@+[a-z0-9\._\-]+\.[a-z]{2,4}$', $email)) { echo "o email é valido"; } ?> Pus o {2,4} visto que não existe nenhum country com 1 ou mais que 4 letras, sendo o máximo que conheço o info
kingless Posted August 6, 2006 at 12:01 AM Report #42533 Posted August 6, 2006 at 12:01 AM Hmm, nice , não ficaria mais completo assim ? <?php $email = "meu_email@mail.com"; if(eregi( '^[a-z0-9\._\-]+\@+[a-z0-9\._\-]+\.[a-z]{2,4}$', $email)) { echo "o email é valido"; } ?> Pus o {2,4} visto que não existe nenhum country com 1 ou mais que 4 letras, sendo o máximo que conheço o info Sim fica melhor
Triton Posted September 24, 2006 at 01:52 PM Report #52369 Posted September 24, 2006 at 01:52 PM Esse código pode não funcionar com certos emails, aqui fica um que funciona bem com todos os emails... (já não sei onde encontrei): function check_email_address($email) { // First, we check that there's one @ symbol, and that the lengths are right if (!ereg("^[^@]{1,64}@[^@]{1,255}$", $email)) { // Email invalid because wrong number of characters in one section, or wrong number of @ symbols. return false; } // Split it into sections to make life easier $email_array = explode("@", $email); $local_array = explode(".", $email_array[0]); for ($i = 0; $i < sizeof($local_array); $i++) { if (!ereg("^(([A-Za-z0-9!#$%&'*+/=?^_`{|}~-][A-Za-z0-9!#$%&'*+/=?^_`{|}~\.-]{0,63})|(\"[^(\\|\")]{0,62}\"))$", $local_array[$i])) { return false; } } if (!ereg("^\[?[0-9\.]+\]?$", $email_array[1])) { // Check if domain is IP. If not, it should be valid domain name $domain_array = explode(".", $email_array[1]); if (sizeof($domain_array) < 2) { return false; // Not enough parts to domain } for ($i = 0; $i < sizeof($domain_array); $i++) { if (!ereg("^(([A-Za-z0-9][A-Za-z0-9-]{0,61}[A-Za-z0-9])|([A-Za-z0-9]+))$", $domain_array[$i])) { return false; } } } return true; } <3 life
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now