Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

regexp

2 réponses
Avatar
dogood
bonjour,

Je suis un total débutant avec regexp, et je dois bien avouer que je
galère bien :)

Voici mon sujet: dans un fichier, je veux récupèrer une durée sous la
forme "Duration: 00:08:24.3"

Pour l'instant je tente avec

@preg_match('/Duration:([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])/',
etc.)

sauf que bien sûr cela ne fonctionne pas. En plus, je viens de me rendre
compte qu'il y a un espace apres les deux petits points. Bon, vais faire
dormir les yeux...

Merci de votre aide éventuelle et Bonne nuit!

:)

2 réponses

Avatar
Christophe Raverdy
dogood () a écrit dans
<fpvk2l$dss$ :

bonjour,


Bonjour


Je suis un total débutant avec regexp, et je dois bien avouer que je
galère bien :)


Pour ce qui est des expressions régulières, vous devriez avoir plus d'aide
sur des forums comme fr.comp.os.unix ou fr.comp.lang.perl

ou bien sur http://www.lumadis.be/regex/index.php



Voici mon sujet: dans un fichier, je veux récupèrer une durée sous la
forme "Duration: 00:08:24.3"

Pour l'instant je tente avec

@preg_match('/Duration:([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])/',
etc.)


Il s'agit d'une fonction php. fr.comp.lang.php (formum modéré) pourrait
aussi vous etre utile.

Le code présenté ci-après peut-il vous aider ?
http://www.jeroenwijering.com/?threadc66
http://forum.hardware.fr/hfr/Programmation/PHP/php-compteur-parametres-sujet_47068_1.htm


sauf que bien sûr cela ne fonctionne pas. En plus, je viens de me rendre
compte qu'il y a un espace apres les deux petits points. Bon, vais faire
dormir les yeux...



pour l'espace " " ?

Avatar
dogood
bonjour,

Merci de votre réponse. J'ai finalement abandonné pregmatch(), pour me
tourner vers un bon vieux grep ... avec une expression régulière :)

Mon topo consistait en l'extraction de la durée d'une vidéo après
l'avoir convertie en .flv avec ffmpeg côté serveur, via un script php
"croné". En cherchant bien, il y a un moyen d'encoder la video et de
"grabber" sa durée en une ligne.

Pour ceux que cela interesse, voici la partie du script php concernée:

//conversion et extraction de la durée



$cmd_ffmpeg = "$ffmpegpath -i $video-a-convertir -ar 22050 -ab 32 -f flv
$video-convertie";

@exec("$cmd_ffmpeg 2>&1 | grep Duration | grep -o
'[0-5][0-9]:[0-5][0-9]:[0-5][0-9]'", $output1);



$duration = $output1[0];


et voilà, on a converti la vidéo, on a lu et stocké sa durée, on peut
maintenant continuer les traitements: INSERT, UPDATE de la base de
données, génération de vignettes, toujours avec ffmpeg, injection des
metatags avec flvtools2, etc...

merci fcolc @ bientôt!

:)