Visualizzazione dei risultati da 1 a 9 su 9

Discussione: aiuto con regex

  1. #1

    aiuto con regex

    praticamente ho un file cosė:

    pippo = pluto
    ciao = miao

    e mi serve una regex per sapere cosa c'č prima di ' = ' e cosa c'č dopo... come posso fare?

    codice:
    <pre><?
    	$aa = 'main = aaa\nciao = pippo';
    
    	preg_match_all('|(.+) = (.+)|U', $tpl_config, $result);
    	
    	print_r($result);
    	
    ?></pre>
    come posso fare? grazie e ciao!

    $result č vuoto...
    PaTeR
    From Ban to Life

  2. #2
    ehm, $aa deve andare al posto di $tpl_config?
    cmq :
    codice:
    preg_match_all('/(.+)=(.+)(?:\\\\n|$)/U', $aa, $result,PREG_SET_ORDER);
    dA .. foto di viaggio
    L'esperienza č il tipo di insegnante pių difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  3. #3
    Originariamente inviato da AnĒkin
    ehm, $aa deve andare al posto di $tpl_config?
    cmq :
    codice:
    preg_match_all('/(.+)=(.+)(?:\\\\n|$)/U', $aa, $result,PREG_SET_ORDER);
    Me la potete spiegare un pō? grazie mille!
    PaTeR
    From Ban to Life

  4. #4
    ehm... perō non funziona con i file con \n!

    main = main.tpl
    pippo = pluto.tpl

    mi riconosce solo pippo = pluto.tpl come mai?
    PaTeR
    From Ban to Life

  5. #5
    preg_match_all('/(.+)=(.+)/m', $testo, $result);

    se nn erro serve il modificatore m

    se per caso non va prova s come modificatore ... č uno dei due ... comunque mi pare al 90% che sia m

  6. #6
    Originariamente inviato da PaTeR non PeTeR
    ehm... perō non funziona con i file con \n!

    mi riconosce solo pippo = pluto.tpl come mai?
    Perchč il mio cervello, vedendo un'unica riga, ha ignorato la corretta soluzione multilinea di daniele e perche gli a capo in genere sono \r\n e non \n.
    dA .. foto di viaggio
    L'esperienza č il tipo di insegnante pių difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  7. #7
    Originariamente inviato da AnĒkin
    Perchč il mio cervello, vedendo un'unica riga, ha ignorato la corretta soluzione multilinea di daniele e perche gli a capo in genere sono \r\n e non \n.
    :master: :master: :master:

    non capisco cosa tu voglia dire... comunque... ho un'altro problemino, non so se č dovuto alla regex, ma nel risultato mi include anche un carattere di 'a capo'... praticamente io devo ottenere da

    ciao = miao
    pippo = pluto

    un array cosė:

    $array['ciao'] = 'miao';
    $array['pippo'] = 'pluto';

    il problema si pone perchč devo compiere operazioni su file con 'miao' e 'pluto' e perciō ( penso sia dovuto al \n o al \r\n ) file_get_contents mi dā un INVALID ARGUMENT...

    Ipotesi?


    -----

    Edit:

    Avendo un'espressione cosė:

    /(.+)\040=\040(.+)\\r\\n/m

    giustamente non mi aggiunge il \r\n alla fine... perō non č detto che ci sia! come posso fare per stabilire che č 'opzionale' ?

    /(.+)\040=\040(.+)(\\r\\n){0,1}/m

    questo non mi ha portato da nessuna parte...

    @AnĒkin: scusa ma mi ero dimenticato che il carattere di newline poteva essere anche \r\n...
    PaTeR
    From Ban to Life

  8. #8
    Originariamente inviato da PaTeR non PeTeR

    @AnĒkin: scusa ma mi ero dimenticato che il carattere di newline poteva essere anche \r\n...
    figurati, sono io che me lo dovevo ricordare

    Cmq avendo chiaro ciō che devi fare direi che se i dati sono sempre in questa forma:
    codice:
     parola_singola = parola_singola\r\n
    ti basta addirittura una cosa del genere
    codice:
    preg_match_all('/\w+/',$txt,$result);
    
    // se preferisci come era prima
    preg_match_all('/(\w+)\s=\s(\w+)/',$txt,$result);
    dA .. foto di viaggio
    L'esperienza č il tipo di insegnante pių difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  9. #9
    preg_match_all('/([^=]+?)=([^\n]+?)/m', $testo, $result);

    prova questa

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.