String Comparison mit Wildcards

WeiblGe

Mitglied
Hallo!
Ich habe folgendes Problem:

Angenommen ich habe mehrere Dokumente mit verschiedenen Properties. Ich möchte mir nun von den Dokumenten nur die Properties mit dem Namen Wohnort anzeigen lassen. Dazu würde ich gerne Wildcards verwenden.

z.:B Wohn* soll alle Einträge anzeigen die mit Wohn beginnen.
*ohn* soll alle Einträge anzeigen in denen "ohn" vorkommt.

Wenn jedoch statt Wohn* nur Wohn eingegeben wird dann sollen nur die EInträge mit dem Namen Wohn angezeigt werden.

Oder bei *ort sollen nur die Properties angezeigt werden welche mit "ort" enden, wenn nur ort, ohne einen * eingegeben wird sollen nur die Properties mit dem Namen ort angezeigt werden.

Ich hoffe ihr wisst was ich meine.

Wie kann man sowas am einfachsten realisieren?

Hoffe ihr könnt mir helfen.

Danke

Gerald
 
Hallo,

Das schreit ja förmlich nach Regex =D

Code:
string rs = suchstring.Replace("*", "(.)*?");
Regex r = new Regex(rs);

[for(anzahlProperties)]
if(r.Match(property).Success)
[passt zum Suchwort]
Is halt z.T. nur pseudo Code hoffe das hilft trotzdem.

Gruss kahuna
 
Danke.

Aber da ist noch eine Sache: Wenn ich dieses Regex verwende, und zb. *ohn* eingebe, dann kommen alle Properties welche ohn beinhalten. Das soll aber nur der Fall sein wenn vor dem ohn und danach ein * steht, wenn kein * davor und danach ist(also nur ohn), dann möchte ich dass er nur genau nach diesem wort sucht, und nicht alle anzeigt in denen "ohn" vorkommt.

Hoffe du weißt was ich meine.
 
:confused: weiss nicht genau was du meinst... das was du beschreibst ist genau das was Regex macht.... Also nein ich weiss nicht so direkt was du meinst...

Gruss kahuna
 
Zurück