vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Suche Visual-Basic Code
Re: Syntax eines Strings checken 
Autor: vbfranz
Datum: 14.05.10 08:18

Hallo Benne,
erstmal Danke für Deine Antwort.

Ich habe das Problem ähnlich gelöst, wie Du angegeben hast und die Token etwas modifiziert.

Ich dachte nur, es gibt eine "Parser"-Logik, die das Problem effizienter lösen kann, die ich nur anpassen muss.
Ich habe hier jeweils einen kleinen Ausschnitt der Dateien wiedergegeben, die miteinander verglichen werden müssen, damit Du eine Vorstellung von meinem Pronlem bekommst.

Anforderung (Größe 93 KB):
4/0[1]V00:V99[2][3]G09:G11,F04,G02,G07,G13,H04,I02,I06,I21,I25,I41,I45,O60,O62[_
  4]1:24[5][6][7][8]2:3,5:6[9][10][1-][2-]
5/0[1]T00:T99,V00:V99[2][3]I01:I09,I20:I28,I40:I51,B01,B06,H01,O60[4]1:9[5]>_
=75.000[6][7]1:5[8]2:3,5:6[9][10][1-][2-]
9/0[1]O00:O99,S00:S99[2][3]G01:G04,O06:O09,O33:O35,O72:O73,W01:W03,B01,B05,F01,_
F02,H01,O01,O05,O60,O70[4]0:4[5]>=200.0
649/1[1]N13,N20,W[2][3]I05:I06,O45:O48,B01,B06,( _
B03|-O30,-O31,-O32,-O33),F01,G01,G14,I02,O20,O60,S01,W02[4][5][6][7][8][9][10][_
1-][2-]
Es geht um die Token, die [3] folgen.

Zu vergleichen (Größe 7.916 KB):
37211/[1]V02[2]6900[3]F11[4]-4[5]1100000[6]NEUBAU WOHNHAUSANLAGE MIT 7 _
  WOHNUNGEN, LIFT UND TIEFGARAGE, DACHTERRASSEN   [7]1[8]4[9]HEIZART: _
  GASHEIZUNG DACHFORM: FLACHDACH[10]1,2,4,8
37212/[1]N10[2]3153[3]A01,A07,O71,W01[4]43[5]0[6]NEUBAU MEHRZWECKHALLE (DETAILS _
BEI PLANUNGSBEGINN)   [7]1[8]1[9][10]1
37213/[1]T02[2]6121[3]F01[4]2[5]1800000[6]NEUBAU WOHNANLAGE BESTEHEND AUS 1
Da dieses sehr lange dauert (einige Stunden), muss das Problem so effizient wie möglich gelöst werden.

Die Logik der Token habe ich verbrochen, aber ich denke, das muss so sein:
- Es gibt "normale" Token, das sind die ohne besondere Sonderzeichen Beispiel: A01,B01,...

- Es gibt Token "Von" - Bis", das sind die Token mit einem Doppelpunkt als Trenner (kein Minus, da dies wo anders vorkommt) Beispiel: A01:A10,...

- Es gibt Token, die bestimmte Inhalte haben müssen und andere nicht haben dürfen (bzw. beide haben müssen), das sind die Token eingeschlossen in Klammern und getrennt durch ein Pipe-Zeichen, diese können links oder rechts ein Minus haben BeispielA01,A03|-C01-C05),...
Erklärung des letzten Beispiels:
Es darf weder C01 noch C05 vorhanden sein, aber A01 ODER A03 vorhanden sein um den Vergleich positiv abzuschliessen.

- Alle diese Token können bunt gemischt sein.

Liebe Grüße
vbfranz
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Syntax eines Strings checken2.460vbfranz04.03.10 14:12
Re: Syntax eines Strings checken1.459Zimmersofts11.05.10 13:22
Re: Syntax eines Strings checken1.466vbfranz11.05.10 14:30
Re: Syntax eines Strings checken1.459benne12.05.10 13:11
Re: Syntax eines Strings checken1.582vbfranz14.05.10 08:18
Re: Syntax eines Strings checken1.611vbfranz14.05.10 08:29
Re: Syntax eines Strings checken1.471benne18.05.10 12:59
Re: Syntax eines Strings checken1.458vbfranz19.05.10 08:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel