
74487
30.01.2009, aktualisiert um 17:01:26 Uhr
IF-Abfrage welche auf Sonderzeichen und Zahlen reagiert
Halloooooooo,
ich bin es wieder. ;)
Meine heutige Frage ist; wie sieht ein Script für eine IF-Abfrage aus, wenn es reagieren soll wenn das Wort Zahlen und/oder Sonderzeichen enthält?
Also quasi:
IF %wort%= Sonderzeichen und/oder Zahlen beinhaltet goto Befehl bla blubb
Über Antworten freue ich mich selbstverständlich.
Schönen Abend noch, René Wayne.
ich bin es wieder. ;)
Meine heutige Frage ist; wie sieht ein Script für eine IF-Abfrage aus, wenn es reagieren soll wenn das Wort Zahlen und/oder Sonderzeichen enthält?
Also quasi:
IF %wort%= Sonderzeichen und/oder Zahlen beinhaltet goto Befehl bla blubb
Über Antworten freue ich mich selbstverständlich.
Schönen Abend noch, René Wayne.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 107646
Url: https://administrator.de/forum/if-abfrage-welche-auf-sonderzeichen-und-zahlen-reagiert-107646.html
Ausgedruckt am: 29.04.2025 um 10:04 Uhr
16 Kommentare
Neuester Kommentar
Hallo Notzke!
Dann etwa so:
Grüße
bastla
Dann etwa so:
@echo off & setlocal
set "Erlaubt=AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"
set C=%temp%\CheckChars.vbs
>%C% echo T=WScript.Arguments(0):E="OK":For i=1 To Len(T):If InStr("%Erlaubt%",Mid(T,i,1))=0 Then:E="":Exit For:End If:Next:WScript.Echo E
set /p "Wort=Bitte zu untersuchendes Wort eingeben: "
if not defined Wort (echo Kein Wort eingegeben! & pause & goto :eof)
set Check=
for /f %%i in ('cscript //nologo %C% "%Wort%"') do set "Check=%%i"
If "%Check%" neq "OK" (echo Wort nicht OK! & pause & goto :eof)
echo OK: "%Wort%"
bastla
Allerdings sagte er dann durchgehend dass das Wort falsch wäre.
... was ja daran liegen könnte, dass es nicht ganz richtig ist ... Da Leerzeichen nicht in der "Erlaubt"-Liste stehen: Könnte es sein, dass etwa am Ende Deines Wortes noch das eine oder andere LEerzeichen herumhängt? Lässt sich leicht prüfen, indem Du folgende Ausgabezeile einbaust:
echo #%vorhergesetzteVariable%%#
Falls dieser Ansatz auch keinen Erfolg bringt, bitte Deinen Batch (inkl. Zuweisung an die besagte Variable bzw Beispiel für ein falsch als "falsch" beurteiltes Wort) posten (und dabei bitte von der Möglichkeit der Gebrauch machen).
Grüße
bastla
Hallo Notzke!
Dann sollte doch (ungetestet) etwa folgendes genügen:
Grüße
bastla
P.S.: Sorry, wenn ich Dich mit der Bitte um "Code"-Formatierung überfordert haben sollte ...
Dann sollte doch (ungetestet) etwa folgendes genügen:
@echo off & setlocal
set "Erlaubt=AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz"
set C=CheckChars.vbs
>%C% echo T=WScript.Arguments(0):E="OK":For i=1 To Len(T):If InStr("%Erlaubt%",Mid(T,i,1))=0 Then:E="":Exit For:End If:Next:WScript.Echo E
REM Usernamen auslesen
for /f "delims=" %%i in (users.txt) do for /f %%a in ('cscript //nologo %C% "%%i"') do if "%%a"=="OK" echo %%j>>test.txt
bastla
P.S.: Sorry, wenn ich Dich mit der Bitte um "Code"-Formatierung überfordert haben sollte ...