Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Eingabe auf bestimmte wörter Prüfen

Frage Entwicklung Batch & Shell

Mitglied: Power-Poler

Power-Poler (Level 1) - Jetzt verbinden

13.05.2012 um 12:47 Uhr, 2944 Aufrufe, 3 Kommentare

Hallo und schönen Sonntag
War lange nicht mehr hier, und will wider versuchen eine Kleinigkeit zu Schreiben

Versuche mich gerade daran die Batch Datei dazu zu bewegen die Eingabe die mit set /p Test= in die Variable Test gespeichert wird, auf bestimmte Wörter zu überprüfen.
Also z.B
Das Huhn legte gestern das Ei
Gestern legte das Huhn das Ei
Ein Ei legte gestern das Huhn
oder
123 Test TEst irgendwas Huhn test test Ei nicht möglich gestern
usw was es halt Alles für Möglichkeiten gibt dies auszudrücken.

Will jetzt einfach nur auswerten lassen, ob der Satz:
Huhn
Ei
gestern
enthält, der Rest ist egal

Habe folgende Zeilen Geschrieben
01.
echo %Test%|Findstr /C:"Ei">nul && goto Ei 
02.
echo %Test%|Findstr /C:"Blume">nul && goto Blume
Die zweite Zeile brauche ich, weil auf mehre mögliche Sätze geprüft werden soll.
Falls die Bedingung fehl schlägt, also nicht alle definierten Wörter oder keins enthalten ist, soll die Zeile für die Eingabe erneut angezeigt werden.
Habe das bisher einfach so gelöst:
01.
:Start 
02.
 
03.
echo Text eingeben 
04.
set /p Test= 
05.
echo %Test%|Findstr /C:"Ei">nul && goto Ei 
06.
echo %Test%|Findstr /C:"Blume">nul && goto Blume 
07.
 
08.
:Fehler 
09.
cls 
10.
echo falsche Eingabe erneut Eingeben 
11.
goto Start
Da die Batch hier scheinbar dan einfach mir dem Code weitermacht, scheint es so zu funktionieren.

Ich hoffe ihr wisst was ich meine
Muss den Code jetzt so ändern, das er nicht nur das eine Wort sucht, sondern alle.
Schonmal danke für eine Antwort
Mfg
Power-Poler
Mitglied: pieh-ejdsch
13.05.2012 um 13:56 Uhr
moin Power-Poler,

mit einer ODER Suche kannst Du nach dem "Ei" oder dem "Huhn" suchen:
01.
02.
echo Das Huhn legte ein Ei 
03.
echo der Hund der Eimer 
04.
echo das Huhn die Eier 
05.
) | findstr /ri "\<huhn\> \<Ei\>"
Eine UND Suche könnte So ausehen:
01.
02.
echo Das Huhn legte ein Ei 
03.
echo der Hund der Eimer 
04.
echo das Huhn die Eier 
05.
) |findstr /ric:" Huhn *.* legt[e]* *.* Eie*r*"
oder ausser der Reihe
01.
02.
echo Das Huhn legte ein Ei 
03.
echo der Hund der Eimer 
04.
echo das Huhn die Eier 
05.
echo das Huhn legte 5 eier 
06.
) |findstr /rc:"\<Huhn\>" |findstr /ric:"\<eie*r* " |findstr /ric:"\<legte\>"
Gruß Phil
Bitte warten ..
Mitglied: Power-Poler
13.05.2012 um 14:51 Uhr
Danke für deine Antwort

Es funktioniert soweit ganz gut.
Habe jetzt Folgende Zeile:
01.
echo %Test%|Findstr /ric:"Huhn *.* Ei[er]*">nul && goto weiter
Es funktioniert wenn der Satz lautet:
Das Huhn legt Eier
aber nicht wenn
Eier legte das Huhn

Dein Drittes Beispiel :"Ausser der Reihe"
Ich weiß nicht genau wie du das meinst, zumindest funktioniert es so nicht, das kommt immer "Falsche Eingabe".
Bitte warten ..
Mitglied: pieh-ejdsch
13.05.2012 um 19:39 Uhr
Bei "Ausser der Reihe" ist die Reihenfolge der zu findenden Worte egal, es müssen aber alle vorhanden sein.

Test im CMD-Fenster
 
>(echo 15 Eier legte das Huhn &echo legt MohrHuhn Setzei &echo ein ei legt das Huhn ) 
15 Eier legte das Huhn 
legt MohrHuhn Setzei 
ein ei legt das Huhn 
 
>(echo 15 Eier legte das Huhn &echo legt MohrHuhn Setzei &echo ein ei legt das Huhn ) |findstr /rc:"\<Huhn\>" |findstr /ric:"\<eie*r* " |findstr /rc:"\<legte*\>" 
15 Eier legte das Huhn 
ein ei legt das Huhn 
 
>(echo 15 Eier legte das Huhn &echo legt MohrHuhn Setzei &echo ein ei legt das Huhn)|findstr /rc:\^<Huhn\^> |findstr /ric:\^<eie*r*  |findstr /ric:\^<legte*\^> 
 
15 Eier legte das Huhn 
ein ei legt das Huhn 
kommt immer "Falsche Eingabe".
Schalte Echo on um den Fehler zu finden.

Gruß Phil
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Per Vbscript bestimmte Zeile ungeachtet der Nummerierung prüfen (7)

Frage von aletri zum Thema VB for Applications ...

Outlook & Mail
Automatische Antwort von Server an bestimmte Absender

Frage von SFischer-SCT zum Thema Outlook & Mail ...

Heiß diskutierte Inhalte
Windows 7
gelöst BOOTMGR is missing (auch nach bootrec -RebuildBcd) (20)

Frage von Mipronimo zum Thema Windows 7 ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (19)

Frage von oel-auge zum Thema Router & Routing ...

Windows Userverwaltung
Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (17)

Frage von Pandreas zum Thema Windows Userverwaltung ...

TK-Netze & Geräte
gelöst Convert von TAPI auf CAPI gesucht (13)

Frage von StefanKittel zum Thema TK-Netze & Geräte ...