Partage
  • Partager sur Facebook
  • Partager sur Twitter

regex chercher un / à la fin d'une chaine

Sujet résolu
    2 septembre 2019 à 0:34:33

    Bonjour,
    Je cherche à savoir si un nom de dossier n'a pas de slash de fin :
    if [[ $dossier_cible =~ "[^/]$" ]]
    if [[ ! $dossier_cible =~ "/?$" ]]
    if [[ $dossier_cible =~ "\/$" ]]
    J'ai essayé plein de chose, mais rien ne marche.
    merci d'avance.

    -
    Edité par bbsebb 2 septembre 2019 à 0:35:06

    • Partager sur Facebook
    • Partager sur Twitter

    << On n'apprend bien qu'à force de se tromper. >>

      2 septembre 2019 à 1:27:06

      salut,

      il est préférable d'utiliser une variable pour stocker la regex, car les guillemets gênent sa lecture, et certains caractères spéciaux pour le shell peuvent y figurer.

      le shell reconnaîtra ses petits.

      $ dossier=directory/
      $ rgx='/$'
      $ [[ $dossier =~ $rgx ]]
      $ echo $?
      0
      $ rgx='^$'
      $ [[ $dossier =~ $rgx ]]
      $ echo $?
      1



      -
      Edité par dantonq 2 septembre 2019 à 2:45:22

      • Partager sur Facebook
      • Partager sur Twitter

      Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique

        2 septembre 2019 à 13:47:46

        Merci c'etait bien ça, je devenais fou ^^ surtout mon premier regex était bon enfait.
        • Partager sur Facebook
        • Partager sur Twitter

        << On n'apprend bien qu'à force de se tromper. >>

        regex chercher un / à la fin d'une chaine

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown