Erstes Wort eines Strings erkennen
Übersicht

![]() |
PddBetreff: Erstes Wort eines Strings erkennen |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo.
Ich bastle grade mehr so zum Spass an einem Batch-Editor. Damit kann man Batch-Dateien auf "leichte" weise erstellen. Nun es gibt auch eine Funktion, mit der man eine Zeile aus dem Batch.Code wieder löschen kann. Nur leider muss ich davon ausgehen, das der Benutzer des Programms sich nicht mit Batch auskenn. also z.b. nicht weis, was echo heist. GIbt es eine möglichkeit, nun das ERSTE Wort dieses Strings zu erkennen? Also: "echo halihalo!" <- das ist der String. Nun, wenn man diese Zeile löschen will, soll ein Hint agezzeigt werden, was diese Zeile bewirkt. Zum Glück kann man in Batch das erste Wort als "erkennung" nutzen. Nur wie kann ich dieses erste Wort "abschneiden"? thx schonmal ![]() |
||
![]() |
BlitzcoderNewsposter |
![]() Antworten mit Zitat ![]() |
---|---|---|
dafür gibt es die befehle left und instr. left gibt dir die linken x buchstaben eines strings, und instr such in strings. man sucht das erste leerzeichen raus, und gibt alles links davon aus. Ich hab mal eben eine Funktion gecodet:
Code: [AUSKLAPPEN] Print ersteswortabschneiden("echo Hallo")
WaitKey End Function ersteswortabschneiden$(befehl$) a=Instr(befehl$," ") Return Right$(befehl$,Len(befehl)-a+1) End Function MfG Blitzcoder |
||
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________ |°°°°°°°°°°°°°°||'""|""\__,_ |______________ ||__ |__|__ |) |(@) |(@)"""**|(@)(@)****|(@) |
- Zuletzt bearbeitet von Blitzcoder am Do, Jul 13, 2006 19:57, insgesamt einmal bearbeitet
![]() |
Willi die Rübe |
![]() Antworten mit Zitat ![]() |
---|---|---|
Suche mit ql:Instr nach dem ersten Leerzeichen und schneide dann den Text mit ql:Mid raus.
Code: [AUSKLAPPEN] zeile$ = input(); "echo halihalo" Print "Vorher: " + zeile$ pos% = Instr( zeile$, " " ) if pos%>0 then zeile$ = Mid( zeile$, pos% ) Print "Nachher: " + zeile$ else Print "Kein Leerzeichen enthalten" EndIf Waitkey() Ungetestet, dürfte aber funktionieren ![]() Greets Willi Edit: @Blitzcoder: Er wollte nicht das erste Wort, sondern dass was dahinter steht ![]() |
||
Ich habe keine Lösung, aber ich bewundere das Problem.
Tehadon Q6600, MSI Neo2-FR, 4GB Ram, nVidia 7800 GTX At the Farewell Party visit: MySpace | Homepage |
![]() |
BlitzcoderNewsposter |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Edit: @Blitzcoder: Er wollte nicht das erste Wort, sondern dass was dahinter steht Wink
Edited ![]() |
||
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________ |°°°°°°°°°°°°°°||'""|""\__,_ |______________ ||__ |__|__ |) |(@) |(@)"""**|(@)(@)****|(@) |
- Zuletzt bearbeitet von Blitzcoder am Do, Jul 13, 2006 19:58, insgesamt einmal bearbeitet
![]() |
Pdd |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke ![]() |
||
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Diese Funktion könnte dir auch helfen:
https://www.blitzforum.de/foru...hp?t=18819 Hiermit kannst du nicht nur das erste Wort, sondern alle Wörter herausfinden. |
||
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group