Version complète: sur le forum Webmaster Hub : Recuperer une chaine de caractere
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
doomer2
Bonsoir à tous,

Je posséde des URL de ce type :

h**p://site.monsite.com/Cadeaux-noel-test-test-p9828877-test-test-test-test.html
ou encore
h**p://site.monsite.com/test-muraux-p8288675-test-test-test.html
ou encore
**p://site.monsite.com/-p3541578-tets-memoire-test-megs-test-compatible-test.html

Je souhaiterais récupérer la série de chiffres qui se situe après la chaine de caractéres -p soit 9828877

J'ai donc essayé de faire ceci :

CODE
preg_match('@^(?:http://)?([^/]+)@i',
    $photos->getElementsByTagName('link')->item($numeroPhoto)->firstChild->data, $matches);
$host = $matches[1];

preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "L'ID : {$matches[0]}\n";


Mais je ne récupére que monsite.com alors que je veux la série de chiffres uniquement. Quelqu'un peut il m'aider ?

Merci à vous.
captain_torche
Quelque chose dans le genre devrait convenir :
CODE
$reg = '#-p([0-9]+)-#';
doomer2
Merci j'ai réussi grâce à ton expression que j'ai remodifier , je donne la solution pour les personnes pour qui cela peut servir :

CODE
$reg = '#([0-9]+)#';
preg_match($reg,
    $photos->getElementsByTagName('link')->item($numeroPhoto)->firstChild->data, $matches);
// repérer les deux derniers segments du nom de l'hôte
//preg_match('/[^.]+\.[^.]+$/', $host, $matches);
echo "L'ID : {$matches[0]}\n";
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.