Ce que j'essaie de réaliser ici, c'est dire que nous avons deux exemples d'URL: Comment puis-je extraire les URL à rayures? P> url1 = "http://emy.dod.com/kaskaa/dkaiad/amaa"
url2 = "http://http://www.example.com"
3 Réponses :
Si vous devez simplement supprimer toutes les barres obliques de la fin de la chaîne d'URL, vous pouvez essayer la regex suivante:
"http://emy.dod.com/kaskaa/dkaiad/amaa//////////".sub(/(\/)+$/,'') "http://www.example.com/".sub(/(\/)+$/,'')
Bonne réponse. Un commentaire mineur de regex est que les parenthèses ne sont pas nécessaires ici.
Merci Alex. J'ai compris hier gsub (/ \ / * $ / $ /) fonctionne aussi comme Crudson mentionné.
Bien que ce thread soit un peu vieux et que la réponse supérieure est assez bonne, mais je suggère une autre façon de le faire:
/^(.*?)\/$/
uppote d'être une expansion pure, au lieu d'utiliser des fonctions spécifiques à la langue
Merci de voter pour si longtemps @theepsilon: D Je pense que cette demande pourrait être faite en utilisant uniquement Regex, au lieu de certaines fonctionnalités spécifiques sur la langue.
def without_trailing_slash path path[ %r(.*[^/]) ] end path = "http://emy.dod.com/kaskaa/dkaiad/amaa//////////" puts without_trailing_slash path # "http://emy.dod.com/kaskaa/dkaiad/amaa"
@other_people_reading_this_question Si, comme moi, il vous suffit de supprimer une barre oblique de fin, vous pouvez utiliser
chaîne # chomp code>. E.g:
"/ chemin / à / to / to /". Chomp ("/") code>