Visualizzazione risultati 1 fino 6 di 6

Discussione: Carattere jolly in php

  1. #1
    Guest

    Predefinito Carattere jolly in php

    Salve a tutti

    una breve info che onestamente non pensavo di far cosi tanta difficolta a trovare

    devo cercare in delle righe di un file txt un determinato testo

    il file è composto cosi

    AB1=3
    AB2=5
    AB4=7
    AB10=6

    ora io devo trovare indipendentemente dal tipo di AB una riga corrispondente a

    AB(carattere jolly)=7

    quindi che sia AB1 o AB2 o AB100 poco importa ma devo verificare che ci sia un AB(X) pati a 7

    il codice lo ho ma non so nè quale sia ne come si isnerisce ilc arattere jolly(che ad esempio in mysql è il simbolo %.

    questo il codice

    Codice PHP:

    $data
    = file($file);

    $mah='AB(jolly)'=7';

    foreach($data as $riga){
    if (strstr($riga,$mah)){
    echo $mah;
    }
    }
    il codice funge perchè se assegno a $mah='AB4=7' mi ressituisce proprio quella riga

    qualcuno sa come si assegna sto jolly?

    Grazie

  2. #2
    Guest

    Predefinito

    Puoi usare un'espressione regolare del tipo /AB[0-9]/ cn preg_match*

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da lottoforlife Visualizza messaggio
    Puoi usare un'espressione regolare del tipo /AB[0-9]/ cn preg_match*
    grazie della risposta

    poui farmi un esempio di espressione regolare?

  4. #4
    Guest

    Predefinito

    ok ci sono arrivato dopo circa 800 tentativi epr via del jolly

    Codice PHP:

    $ce
    =preg_match("/(AB)?(=7)/i",$mah);
    però così mi restituisce 1 se trova la stringa nella variabile e 0 al contrario.

    A me invece serve che mi rtovi la riga contenete questo dato epr poi iniziare il conteggio delle righe e trovare la successiva

    Suggerimenti?

  5. #5
    Guest

    Predefinito

    Io userei
    Codice:
    $s = "AB1=10";
    $arr = '';
    $res = preg_match_all("/AB[0-9]+=[0-9]+/",$s,$arr,PREG_OFFSET_CAPTURE);
    Avrai un array cn le occorrenze trovate e reltivi offset dall'inizio della stringa, cmq va testato

  6. #6
    Guest

    Predefinito

    Citazione Originalmente inviato da lottoforlife Visualizza messaggio
    Io userei
    Codice:
    $s = "AB1=10";
    $arr = '';
    $res = preg_match_all("/AB[0-9]+=[0-9]+/",$s,$arr,PREG_OFFSET_CAPTURE);
    Avrai un array cn le occorrenze trovate e reltivi offset dall'inizio della stringa, cmq va testato
    lottor grazie delle risposte eprò forse nell'euforia del alvoro mi son eprso un passaggio

    il problema l'ho posto in maniera semplice perchè in realtà io volevo unc arattere jolly che mi sostituisse quell'1 in AB

    nel file txt sono presenti varie stringhe ed io devo centrare l'AB?=ilnumero che ho ricavato da altro script.

    quindi è proprio $s che mi manca perchè in $s ci dovrebbe essere AB?=5

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •