Autor Beitrag
ffprogramming
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 44

Win XP
C# Java C PHP
BeitragVerfasst: Di 12.05.09 15:52 
Hi! Ich melde mich mal wieder! Ich hoffe ihr könnt mir helfen:

Ich habe folgendes Problem:
Ich möchte einen Text analysieren. Am Ende jeder Zeile des Textes steht ein ;
Ich nehem den Text und zerlege ihn in Zeilen mittels .Split
Nun möchte ich jede Zeile nochmals in Wörter zerlegen.

Jetzt hab ich ein Problem.
Ich weiß nicht wieviel Zeilen der User eingeben wird.
Ich möchte nun jede Zeile mit if Bedingungen interpretieren.
Das ginge auch wenn nur eine Zeile eingegeben würde gut
Ich möchte aber jede Zeile durch diese Lange Liste von IF Bedingungen schicken.

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
static void Main(string[] args)
        {
            string first = Console.ReadLine();
            string[] zeilen;
            char[] trennzeichen = { ';' };
            zeilen = first.Split(trennzeichen);
            char[] trennzeichen2 = { ' ' };
            string[] command;
            command = zeilen[0].Split(trennzeichen2);
            if(command[0]=="txt")
            {
            if (command[1] =="schreiben")
            {
             //tue was
            }
            }


Mein Problem ist jetzt wie kann ich jede Zeile so analysieren ohne für jede Zeile schon vorher ein Array festzulegen.

Wenn noch fragen da sind ruhig nachfragen!!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 12.05.09 15:59 
Du kannst das ganze ja in eine while-Schleife setzen.
ffprogramming Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 44

Win XP
C# Java C PHP
BeitragVerfasst: Di 12.05.09 16:07 
nur wie lange soll die while schleife laufen
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Di 12.05.09 16:19 
Einfacher geht es mit einer foreach-Schleife:
ausblenden C#-Quelltext
1:
2:
3:
4:
foreach(string zeile in zeilen)
{
  ... // evtl. dasselbe für die 'commands'
}

Als weitere Hilfe kann ich dir das OpenBook openbook.galileocomp...ng.de/visual_csharp/ empfehlen (konkret dazu dann Kapitel 2.7 "Programmschleifen" ).
ffprogramming Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 44

Win XP
C# Java C PHP
BeitragVerfasst: Di 12.05.09 16:25 
jo ich programmiere schon seit etwa einem Jahr und habe mir schleifen immer noch meine Probleme
Aber Danke!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 12.05.09 16:32 
foreach hilft dir hier wohl wenig, da es ja um Benutzereingaben geht.

Du kannst eine while-Schleife so lange laufen lassen bis die Benutzereingabe "stop" ist oder so. Das kannst du ja bei first abfragen.
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Di 12.05.09 17:48 
Hallo Sebastian,

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
foreach hilft dir hier wohl wenig, da es ja um Benutzereingaben geht.

Das geht trotzdem. Durch Console.ReadLine wird ein String eingelesen, der durch String.Split in ein Array zeilen aufgeteilt wird. Die Größe dieses Arrays wird durch die Benutzereingabe festgelegt und ist von vornherein variabel. Dieses Array kann durch foreach bearbeitet werden - genauso, wie es Th69 skizziert hat.

Jürgen
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 12.05.09 18:43 
Ja, dafür ja. Ich hatte das falsch verstanden und auf die Anzahl der Eingaben bezogen, weil es darum direkt davor ging. :oops:
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mi 13.05.09 08:47 
Alles klar. Ich hatte mich schon gewundert, dass du so eine Aussage über foreach gemacht hast. Jürgen