IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

recherche entre 2 étoiles


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 51
    Points : 41
    Points
    41
    Par défaut recherche entre 2 étoiles
    bonjour ,

    je recherche un script qui me permet de rechercher une suite de caractères qui se trouve entre 2 étoiles.

    exemple : abc*def*ghij , réponse : def

    comment puis-je faire ?

    merci d'avance.

    cordialement.

  2. #2
    Membre chevronné
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Points : 1 991
    Points
    1 991
    Par défaut
    salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set var=abc*def*ghij
    for /f "tokens=2 delims=*" %%a in ("%var%") do echo %%a

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 51
    Points : 41
    Points
    41
    Par défaut
    ok , merci pour la réponse.

    maintenant, je voudrais une fois le programme lancé, que je puisse taper une suite de caractères conprenant ses 2 étoiles, et qu'il me donne ce qu"il y a entre les deux étoiles .

    merci d'avance.

    à bientôt.

  4. #4
    Membre éclairé Avatar de messinese
    Homme Profil pro
    IT Security Consultant
    Inscrit en
    Septembre 2007
    Messages
    429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IT Security Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 429
    Points : 876
    Points
    876
    Par défaut
    Salut,

    Je sais que tu recherche en batch , cependant je tenais à suggérer la meme chose en powershell au cas ou car le batch c'est quand meme limité (en plus d'etre moche), puis sait-on jamais cela peu peut etre intérésser des personnes de passage (ou pas)....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [string]$chaine=@("abc*def*ghij");
    $chaine.split("*")[1];
    voir meme dans une boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    [string]$chaine=@("abc*def*ghij");
    for($i=0;$i -le $chaine.Length;$i++){
    $chaine.split("*")[$i];
    }
    Le tri peut ensuite facilement etre fait via regexp par exemple afin d'isoler certains éléments.

    Cordialement.

  5. #5
    Membre averti
    Avatar de sweetasnz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    212
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 212
    Points : 375
    Points
    375
    Par défaut
    le plus simple c'est de le passer en regex :
    http://txt2re.com/index-perl.php3?s=abc*def*ghij%20&4

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 51
    Points : 41
    Points
    41
    Par défaut
    merci pour les réponses.

    mais j'ai un nouveau petit problème qui se présente. j'ai fait un petit script en batch:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    @echo off
    set /p fich=taper le code avec les 2 etoiles :
    echo set fichier=%fich% > fichier.cmd
    for /f "tokens=2 delims=*" %%i in (fichier.cmd) do echo set caractere=%%i >> fichier.cmd
    for /f "tokens=3 delims=*" %%j in (fichier.cmd) do echo set ext=%%j >> fichier.cmd
    
    call fichier.cmd
    echo %caractere%*%ext%
    comme vous pouvez le remarquer : un met un espace juste avant l'étoile. comment faire pour retirer cette espace ?

    merci d'avance.

    cordialement.

  7. #7
    Membre éclairé Avatar de messinese
    Homme Profil pro
    IT Security Consultant
    Inscrit en
    Septembre 2007
    Messages
    429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IT Security Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 429
    Points : 876
    Points
    876
    Par défaut
    Salut, je ne comprend pas la questionsp pourrais-tu expliquer ce que tu veux changer, ce qui cloche ?

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 51
    Points : 41
    Points
    41
    Par défaut
    si je tape : gfsgdf*fgsdfg*gfdsgs

    en réponse , j'ai cela : fgsdfg *gfdsgs

    et j'aimerais supprimer cette espace dans la réponse

  9. #9
    Membre éclairé Avatar de messinese
    Homme Profil pro
    IT Security Consultant
    Inscrit en
    Septembre 2007
    Messages
    429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IT Security Consultant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2007
    Messages : 429
    Points : 876
    Points
    876
    Par défaut
    Ok , donc tu peux faire comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @echo off
    set /p fich=taper le code avec les 2 etoiles :
    echo set fichier=%fich% > fichier.cmd
    for /f "tokens=2 delims=*" %%i in (fichier.cmd) do echo set caractere=%%i >> fichier.cmd
    for /f "tokens=3 delims=*" %%j in (fichier.cmd) do echo set ext=%%j >> fichier.cmd
    
    call fichier.cmd
    
    Set caractere=%caractere:~0,-1%
    echo %caractere%*%ext%
    qui renvois alors ce que tu demande en enlevant le caractere de fin de string.

    Cordialement.

  10. #10
    Membre éprouvé Avatar de gretch
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Avril 2006
    Messages
    1 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 165
    Points : 1 250
    Points
    1 250
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @echo off
    set /p fich=taper le code avec les 2 etoiles :
    echo set fichier=%fich%> fichier.cmd
    for /f "tokens=2 delims=*" %%i in (fichier.cmd) do echo set caractere=%%i>> fichier.cmd
    for /f "tokens=3 delims=*" %%j in (fichier.cmd) do echo set ext=%%j>> fichier.cmd
    
    call fichier.cmd
    
    Set caractere=%caractere:~0,-1%
    echo %caractere%*%ext%
    explication
    la ligne 1 ammene un espace la 2 non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ext=%%j >> fichier.cmd
    ext=%%j>> fichier.cmd

Discussions similaires

  1. Recherche entre 2 dates (début/fin)
    Par Julien42 dans le forum Access
    Réponses: 4
    Dernier message: 11/01/2007, 10h33
  2. recherche entre 2 dates
    Par avyrex dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/12/2006, 00h17
  3. recherche entre deux dates dans une requête
    Par emmanuel4945 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 29/11/2006, 21h42
  4. rechercher entre 2 dates
    Par iomega dans le forum Requêtes
    Réponses: 6
    Dernier message: 04/10/2006, 14h16
  5. [VBA-E] PROBLEME de recherche entre colonnes
    Par july92 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/02/2006, 09h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo