Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: le solite odiose regex

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183

    le solite odiose regex: aiutooo!

    ciao a tutti!
    in questo momento sto impazzendo per cercare "semplicemente" di validare l'immissione di una stringa con eventualmente una regex.

    la stringa da immettere e validare deve:
    1) non essere nulla = deve contenere qualche carattere
    2) può contenere al suo interno uno o più spazi
    3) non può iniziare con uno o più spazi

    esempio:

    abc123!"£ (valida)
    abc 12$ (valida)
    _4% f55 (valida)
    a 2 55 % (valida)
    abc1 34 (non valida) (inizia con uno spazio)
    233as$ (non valida) (inizia con due spazi)

    Grazie mille per l'aiuto!

  2. #2
    Le funzioni messe a disposizione da php ti possono aiutare!
    tipo

    Codice PHP:
    ltrim() //taglia gli spazi all'inizio della strina 

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2007
    Messaggi
    183
    molto interessante e buono a sapersi.... ora farò qualche prova.... grazie

  4. #4
    Non servono regular expressions, solo logica e funzioni built-in:

    Codice PHP:
    if ( strlen($string) > AND substr($string01) != ' ' ) {
        
    // stringa valida
    } else {
        
    // stringa non valida


  5. #5
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    Originariamente inviato da k.b
    Non servono regular expressions, solo logica e funzioni built-in:

    Codice PHP:
    if ( strlen($string) > AND substr($string01) != ' ' ) {
        
    // stringa valida
    } else {
        
    // stringa non valida


    Codice PHP:
    if(ltrim((string)$var) !="") echo "$var passa aventi"
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  6. #6

  7. #7
    Anzi, correggo. dottwatson il tuo codice non rispetta i criteri, una stringa che inizia con spazi viene considerata valida (verifichi solo che una volta togli gli spazi iniziali la stringa non sia vuota).

  8. #8
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    giusto

    direi che così invece sia perfetto

    Codice PHP:
    //ha spazi ed è piena: (false == true) 
    //è vuota: (true == false)
    //non ha spazi ed è piena: (true == true)

    if( (ltrim($var) == $var) == !empty($var)  ) echo "$var passa aventi"
    thanks!
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  9. #9
    Forse volevi mettere un AND invece del secondo == ?

  10. #10
    Ciao,
    giusto perchè hai chiesto un'espressione regolare, te la scrivo:
    codice:
    /^[^ ]/
    Utilizzando preg_mach avresti una soluzione del tipo:

    Codice PHP:
    if (preg_match("/^[^ ]/"$var) {
        
    // stringa valida 
    } else { 
        
    // stringa non valida 

    Tuttavia, questa soluzione, impiega per essere eseguita circa 2 volte e mezza il tempo di quella che ti hanno precedentemente suggerito
    Full Stack Developer presso Advice Lab
    Bonus Bitcoin
    Moon Bitcoin

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.