Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/09/2007, 11h05   #1
Membre chevronné
 
Avatar de nathieb
 
Homme olivier Thiébaut
Chef de projet/Architecte
Inscription : mai 2004
Messages : 627
Détails du profil
Informations personnelles :
Nom : Homme olivier Thiébaut
Âge : 45
Localisation : France

Informations professionnelles :
Activité : Chef de projet/Architecte
Secteur : Service public

Informations forums :
Inscription : mai 2004
Messages : 627
Points : 706
Points : 706
Par défaut Récupérer la partie extension d'un fichier

Bonjour,

Je bute sur un pb simple.

J'ai des fichiers monfichier.ext

je ne connais pas l'extension , et j'ai besoin de récupérer la partie
monfichier.

Je sais grâce à une regex récupérer l'extension soit \.([^\.])*$

par contre comment fait t'on pour récupérer l'autre partie ??

Si vous avez une piste merci d'avance
olivier
nathieb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 11h07   #2
Invité régulier
 
Étudiant
Inscription : septembre 2007
Messages : 15
Détails du profil
Informations personnelles :
Âge : 22
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : septembre 2007
Messages : 15
Points : 7
Points : 7
Envoyer un message via MSN à Babacooll
Pourquoi ne pas utiliser un explode? ..

Code :
1
2
3
4
5
6
$fichier = "image.gif";
 
$parties = explode(".",$fichier);
 
$parties[0] vaudra "image"
$parties[1] vaudra "gif"
Ou je me trompe? ...
Babacooll est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 11h22   #3
Membre chevronné
 
Avatar de nathieb
 
Homme olivier Thiébaut
Chef de projet/Architecte
Inscription : mai 2004
Messages : 627
Détails du profil
Informations personnelles :
Nom : Homme olivier Thiébaut
Âge : 45
Localisation : France

Informations professionnelles :
Activité : Chef de projet/Architecte
Secteur : Service public

Informations forums :
Inscription : mai 2004
Messages : 627
Points : 706
Points : 706
Par défaut ok je ne voyais pas cela

D'ccord avec le point dans le fichier c'est un cas
que j'avais déjà envisagé.

et avec un regex pas une solution pour la beauté du geste


en tout cas merci pour vos réponses.

olivier
nathieb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 11h41   #4
Membre Expert
 
Inscription : août 2002
Messages : 1 036
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 1 036
Points : 1 166
Points : 1 166
Bonjour,

Et ça ne serait pas plus simple comme ça ?
Code :
1
2
3
4
5
6
<?php
  $filename = "monfichier.aaa.txt";
  $partie = pathinfo($filename);
 
  echo $partie['filename'];
?>
jeca est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 11h43   #5
Membre Expert
 
Inscription : janvier 2005
Messages : 2 288
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 2 288
Points : 2 287
Points : 2 287
Citation:
Envoyé par jeca Voir le message
Bonjour,

Et ça ne serait pas plus simple comme ça ?
Code :
1
2
3
4
5
6
<?php
  $filename = "monfichier.aaa.txt";
  $partie = pathinfo($filename);
 
  echo $partie['filename'];
?>
Si mais ca ne marche que depuis PHP 5.2.0
koopajah est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/09/2007, 12h16   #6
Membre Expert
 
Inscription : août 2002
Messages : 1 036
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 1 036
Points : 1 166
Points : 1 166
D'accord koopajah.

Et comme ça ?
Code :
1
2
3
4
5
6
<?php
  $filename = "monfichier.aaa.txt";
  $position = strrpos($filename, '.');
 
  echo substr($filename, 0, $position);
?>
jeca est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/09/2007, 00h28   #7
Membre chevronné
 
Inscription : mars 2002
Messages : 611
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : mars 2002
Messages : 611
Points : 764
Points : 764
Je pense qu'avec cette regex ca devrait fonctionner :

DelphiManiac est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/09/2007, 23h24   #8
Membre émérite
 
Inscription : juin 2002
Messages : 1 013
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 1 013
Points : 959
Points : 959
Citation:
Envoyé par jeca Voir le message
Code :
1
2
3
4
5
6
<?php
  $filename = "monfichier.aaa.txt";
  $position = strrpos($filename, '.');
 
  echo substr($filename, 0, $position);
?>
+1

C'est certainement plus rapide qu'un regex
francis m est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/09/2007, 14h02   #9
Membre chevronné
 
Inscription : mars 2002
Messages : 611
Détails du profil
Informations personnelles :
Âge : 48
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : mars 2002
Messages : 611
Points : 764
Points : 764
Pourquoi ai je répondu avec une regex, parce que l'auteur fournissait au départ une solution pour récupérer l'extension avec une regex et qu'il demandait quelques messages plus loin, un exemple avec une regex.

Mais il est vrai que la regex est surement plus gourmande que le strpos.
DelphiManiac est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h15.


 
 
 
 
Partenaires

Hébergement Web