web-dev-qa-db-fra.com

Comment puis-je extraire le texte avant un caractère ou une chaîne dans un fichier de commandes?

Je cherche essentiellement l'opposé de ce message: https://stackoverflow.com/questions/47796707/how-to-extract-text-after-in-batch-file . Je cherche à extraire le texte avant un signe égal dans une chaîne de texte (ou retirez le texte après le signe égal et le signe égal).

Exemple d'entrée:

User=Your Friend

Sortie désirée:

User

Depuis la longueur du texte avant et après que le signe égal varie, je ne peux pas utiliser quelque chose comme %var:~0,-12%.

4
Mark Deven

Je cherche à extraire le texte avant un signe égal dans une chaîne de texte

Utilisez le fichier de commandes suivant (test.cmd):

@echo off
setlocal enabledelayedexpansion
set _string=User=Your Friend
echo %_string%
for /f "tokens=1 delims==" %%a in ("%_string%") do (
  echo %%a
  )
endlocal

Exemple de sortie:

> test
User=Your Friend
User

En plus de lecture

2
DavidPostill