Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746

    problema con espressione regolare



    avendo il nome di un file (solo numerico) devo trovarlo in una directory anche se non ne conosco l'estensione che può essere solo gif/jpg/pgn/swf.

    ho provato a fare questa espressione regolare:
    codice:
    ^12\.(gif)|(jpg)|(pgn)|(swf)$
    solo che basta che l'estensione sia giusta e l'accetta anche se il resto (numero e punto) non c'è o non è corretto.

    qualcuno sa mica cosa potrebbe essere che non va? :master:
    Errare humanum est, perseverare ovest

  2. #2

    Re: problema con espressione regolare

    io non ti ho ben capito ma prova cosa :
    Codice PHP:
    $nome "immagine.gif";
    $togli = array (
    =>'.gif',
    =>'.jpg',
    =>'.png',
    =>'.swf');
    $metti = array (
    =>'',
    =>'',
    =>'',
    =>'');
    $directory str_replace ($togli,$metti,$nome);
    echo 
    $directory 
    cosi ti toglie estensione

  3. #3
    Codice PHP:
    preg_match_all("/([0-9]*)\.(gif|jpg|png|swf)/",$path ,$risultato); 


    EDIT:
    prima del . (punto) ci va un \ (backslash) che il forum ha tolto
    There are 10 types of people in the world: Those who understand binary, and those who don't.

  4. #4
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    grazie, potrebbero andare bene diverse soluzioni, però cercavo di farlo con le espressioni regolari.

    Codice PHP:
    $id "numero corrispondente al nome del file senza estensione";

    while(
    $file readdir($dir)) {

    if (
    $file != '.' && $file != '..' ) {

    if ( 
    eregi("^$id\.(gif)|(jpg)|(png)|(swf)$",$file)) $file_trovato $file ;

    }} 
    Errare humanum est, perseverare ovest

  5. #5
    solo un piccolo appunto: utilizzate i tag code per postare codice non php.
    risulta tutto molto più chiaro e il code non si mangia certi caratteri, d'altronde il php non c'è tra quelli disponibili forse appunto per questo motivo





    bye!
    Talvolta anche una persona apparentemente inutile si rivela un abile samurai dalla forza di mille uomini, dimostrando di poter rinunciare alla vita e che il suo cuore si è completamente identificato con quello del suo padrone

  6. #6
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    ok mascalzone, alla fine bastava cambiare la disposizione delle parentesi, ora mi funziona anche con eregi.

    grazie a tutti
    Errare humanum est, perseverare ovest

  7. #7
    Originariamente inviato da carlo2002
    ok mascalzone, alla fine bastava cambiare la disposizione delle parentesi, ora mi funziona anche con eregi.

    grazie a tutti
    la soluzione che ti avevo proposto andava bene per cercare in una stringa (path) se era presente un file (con il nome composto da soli numeri) con una delle estensioni che avevi detto...

    sinceramente, se devi verificare solo se esiste un file, al posto tuo userei 'file_exists'

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

  8. #8
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    non hai mica tutti i torti, probabilmente mi stavo complicando la vita. ora ci penso grazie.

    Errare humanum est, perseverare ovest

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.