Autor Beitrag
Barret
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 156
Erhaltene Danke: 1

Win XP
D7 Ent
BeitragVerfasst: Do 03.02.11 14:44 
Hallo!

Ich steh grad etwas auf dem Schlauch.
Ich bin dabei ein System zu erstellen welches dynamische XML-Dateien ausspuckt.


Jetz bin ich an einer stelle an der ich eine interne Funktion abgleichen muss.
Und zwar habe ich einen String und will erausbekommen ob er einen bestimmten Teil enthält.

Konkretes Beispiel: String der rein kommt: "view_kat_art_72"
Ich habe zwei Funktionen die ich an hand dessen unterscheiden muss. Zum einen "view_kat_art_" und die Zahl die dahinter steht ist eine interne Datenbankzuordnung. Proble ist jetzt, dass ich aber auch noch eine Funktion "view_kat_" habe ... Ich muss das ganze aber schon genau haben welches der beiden es ist.

Sollte eig nich schwer sein, steh da grad aber wie gesagt auf dem Schlauch....

_________________
Wir könnten ja, wenn wir wollten aber wir wollen ja nicht.
It´s not a bug, it´s a feature.
Regan
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 2157
Erhaltene Danke: 72


Java (Eclipse), Python (Sublimetext 3)
BeitragVerfasst: Do 03.02.11 14:50 
Hallo,

user profile iconBarret hat folgendes geschrieben Zum zitierten Posting springen:
Ich steh grad etwas auf dem Schlauch.

Dann geh doch einfach runter ;)

user profile iconBarret hat folgendes geschrieben Zum zitierten Posting springen:
Konkretes Beispiel: String der rein kommt: "view_kat_art_72"
Ich habe zwei Funktionen die ich an hand dessen unterscheiden muss. Zum einen "view_kat_art_" und die Zahl die dahinter steht ist eine interne Datenbankzuordnung. Proble ist jetzt, dass ich aber auch noch eine Funktion "view_kat_" habe ... Ich muss das ganze aber schon genau haben welches der beiden es ist.

Prüfe doch einfach, ob es das mit "art" ist. Und wenn nicht, dann kannst du davon ausgehen, dass es das andere ist. Wie wäre es da zum Beispiel mit einer case Anweisung und der Funktion Pos?

Viele Grüße
Regan
Crombo
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 54
Erhaltene Danke: 8

Windows 7, Windows Vista, Windows XP
Delphi XE Architect, Visual Studio 2010 Professional
BeitragVerfasst: Do 03.02.11 15:10 
Hallo,

vielleicht wären auch Regular Expressions für dich hilfreich. (www.regular-expressions.info/delphi.html)

Ansonsten wie Regan geschrieben hat mittels Pos() und case.

Crombo

_________________
one day your life will flash before your eyes. make sure it's worth watching
Barret Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 156
Erhaltene Danke: 1

Win XP
D7 Ent
BeitragVerfasst: Do 03.02.11 15:15 
Ich hab auch schon überlegt ob ich das mit case mach...

Ich weiß halt nur nich wie viele Funktionen es überhaupt geben wird.
Bis jetzt sind es 5 interne Funktionen. Wobei die anderen 3 100% zuzuordnen sind.

Bin grad auf der Suche wie ich die Position des letzten Unterstriches auslese.
Wobei es sein kann das gar kein Unterstrich in dem Funktioneaufruf vorhanden ist. (welches dann externe Funktionen sind die später mit der Benutzung der XML-File ausgelöst werden).

EDIT: Is zwar nich wirklich schnell wie meine Lösung jetzt ist aber es geht.
(In ner Schleife den String durchlaufen und immer die Pos zwischenspeichern wenn ein Unterstrich da is. Und danach dann Den String bis zur letzten gefundenen Pos mit den Befehlen abgleichen ...)

_________________
Wir könnten ja, wenn wir wollten aber wir wollen ja nicht.
It´s not a bug, it´s a feature.
elundril
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3747
Erhaltene Danke: 123

Windows Vista, Ubuntu
Delphi 7 PE "Codename: Aurora", Eclipse Ganymede
BeitragVerfasst: Do 03.02.11 16:14 
warum fragst du nicht Pos('view_kat_', XMLPart) und Pos('art_', XMLPart) ab? Wenn beides > 0 ist dann weißt du das es view_kat_art_ ist. Wenn nur das erste >0 ist, weißt du das view_kat_ ist.

lg elundril

_________________
This Signature-Space is intentionally left blank.
Bei Beschwerden, bitte den Beschwerdebutton (gekennzeichnet mit PN) verwenden.