Visualizzazione dei risultati da 1 a 6 su 6

Discussione: ereg

  1. #1

    ereg

    ciao
    ho questo codice...
    Codice PHP:
    $str "as]d1z"
    $add"1\]";

    if ( 
    ereg("^[[:alpha:]".$add."]+$"$str) ) { $risultatotrue; }
    else { 
    $risultatofalse; } 
    mi restituisce sempre false....


    ...mentre se:

    $str = "asd1z"
    $add= "1";

    mi restituisce correttamente true.... perchè con la ] backslashata non va?
    (idem con il trattino -)
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  2. #2
    non capisco dov'è l'errore l'escape dovrebbe far "vedere" la paretesi quadra come un normale carattere da riconoscere... ono??

    [edit]
    cavolo mi sono accorto solo ora che mettendo tra i tag PHP
    è scomparso l'escape nel post precedente....cmq il codice è questo:

    $str = "as]d1z"
    $add= "1\]";

    if ( ereg("^[[:alpha:]".$add."]+$", $str) ) { $risultato= true; }
    else { $risultato= false; }


    e non va
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  3. #3
    Boh, non uso le POSIX cmq sembrerebbe che la quadra non la vuole vedere, se la metti esterna però mi pare funzioni:

    codice:
    $str = "as]d1z";
    
    if ( ereg("^([[:alpha:]1]|\])+$", $str) ) { $risultato= true; }
    else { $risultato= false; }
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  4. #4
    Originariamente inviato da Anªkin
    Boh, non uso le POSIX cmq sembrerebbe che la quadra non la vuole vedere, se la metti esterna però mi pare funzioni:

    codice:
    $str = "as]d1z";
    
    if ( ereg("^([[:alpha:]1]|\])+$", $str) ) { $risultato= true; }
    else { $risultato= false; }
    hmmm così da true su qualsiasi cosa metto in $str


    in poche parole, io devo controllare che la stringa $str rispetti alcune limitazioni
    in questo caso deve essere una 'parola' con al più i caratteri che sono in $add

    quindi nel primo caso: una parola che al più può contenere il numero 1 e la quadra ]
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  5. #5
    nobody wanna help me?
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  6. #6
    Codice PHP:
    preg_match("/[^a-zA-Z".$add."]+/"$str
    con la preg_match va!

    bha ho riletto la doc. sulla sintassi delle espressioni regolari e continuo a non capire perche con ereg \] oppure \- non considera backslashati questi caratteri all'interno di una classe [xxxx]

    There are 10 types of people in the world: Those who understand binary, and those who don't.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.