Ich möchte Zeichenfolgen mit einem Platzhalter (*) abgleichen, wobei der Platzhalter "any" bedeutet. Zum Beispiel:
*X = string must end with X
X* = string must start with X
*X* = string must contain X
Einige zusammengesetzte Verwendungen wie:
*X*YZ* = string contains X and contains YZ
X*YZ*P = string starts with X, contains YZ and ends with P.
Gibt es dafür einen einfachen Algorithmus? Ich bin mir nicht sicher, ob ich Regex verwenden soll (obwohl dies möglich ist).
Zur Verdeutlichung geben die Benutzer das Obige in ein Filterfeld ein (so einfach wie möglich). Ich möchte nicht, dass sie selbst reguläre Ausdrücke schreiben müssen. Etwas, das ich leicht aus der obigen Notation transformieren kann, wäre also gut.
YZ ABC X
übereinstimmen*X*YZ*
, dh müssen die Teilzeichenfolgen sowohl in der Zeichenfolge als auch im Muster in derselben Reihenfolge angezeigt werden oder nicht? Ich würde annehmen, dass es nicht übereinstimmen sollte, aber "Zeichenfolge enthält X und enthält YZ" macht es nicht klar. Wenn es übereinstimmen sollte, sind alle aktuellen Antworten falsch.