2011-08-11 5 views
0

Comment est-ce que je ferais correspondre la chaîne contenue dans ces parenthèses en utilisant regex?Question Regex concernant la correspondance de chaîne

[youtubehd:JqIrKJ1Q1nz] 

Je voudrais remplacer le contenu après la : et avant le support.

Le résultat final ressemblerait à ceci

http://www.youtube.com/JqIrKJ1Q1nz 

Répondre

0
Match:     Replace: 
/\[youtubehd:(\w+)\]/ http://www.youtube.com/$1 
1

Exemple de code Perl:

my $string='[youtubehd:JqIrKJ1Q1nz]'; 
my $result; 
if ($string =~ /\[youtubehd:([^\]]+)\]/) { 
    $result= "http://www.youtube.com/$1"; 
} 

Cette regex fonctionne même si la chaîne contient des caractères spéciaux.

+0

+1 pour une expression rationnelle plus rapide sans validation. – sln

Questions connexes