Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Stringa contiene numeri e lettere

    vorrei verificare che una stringa contenga numeri e lettere

    Dov'è l'errore?
    Codice PHP:
    $string='12345678'$regex "/\b[a-z]+[0-9]+\b/i";
     if (
    preg_match($regex$string)) {
    echo 
    'ok';
    }
    else echo 
    'errore;' 

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    La tua regola significa: la stringa deve avere all'inizio almeno una lettera, dopo tutte le lettere deve esserci almeno un numero.

    Quindi:
    - abcd -> non è valida, non ci sono numeri dopo le lettere
    - abcd123ad -> non è valida, ci sono lettere dopo i numeri
    - 123abc -> non va bene, non comincia con lettere

    le uniche sequenze valide sono stringhe del tipo: abc123, a123, abcd12....

    Tu che vuoi dire con la regola?
    Ultima modifica di Alhazred; 20-03-2017 a 11:34

  3. #3
    Io vorrei che:

    1234 non valida
    abc non valida
    Abc123 valido
    123Abc valido

    Una striga deve contenere almeno una lettera maiuscola, minuscola e un numero.

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,359
    E 12A34b, abC123, a123b45gF6, etc...?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Quote Originariamente inviata da badaze Visualizza il messaggio
    E 12A34b, abC123, a123b45gF6, etc...?
    Una striga deve contenere almeno una lettera maiuscola, minuscola e un numero in qualsiasi ordine.

  6. #6
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,359
    Prova questo. Appena testato.

    ATTENZIONE : funziona all'incontrario. Se $result è false allora è ok.

    Codice PHP:
    <?php
    $string  
    "a1P";
    $pattern "/^([0-9a-z]+|[0-9A-Z]+|[a-zA-Z]+)$/";
    $result  preg_match($pattern$string);
    if (!
    $result) {
     print 
    "$string va bene";
    } else {
     print 
    "$string non va bene";
    }
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.