Ich versuche, zwei Gruppen in einem Ausdruck zu entsprechen, jede Gruppe stellt einen einzelnen Buchstaben in Initialen als Teil eines Namens, zum Beispiel in George RR Martin der ersten Gruppe entspricht die erste R und die zweite Gruppe würde die zweite R passen, ich habe so etwas wie dies:Regex für übereinstimmende Gruppen, aber eine bestimmte Kombination von Gruppen ausgeschlossen
\b([a-zA-Z])[\.{0,1} {0,1}]{1,2}([a-zA-Z])\b
aber ich möchte eine bestimmte Kombination dieser Gruppen auszuschließen, sagen, wenn die ersten Gruppenspiele der Buchstabe d und die zweite Gruppe stimmen mit dem Buchstaben r überein.
Ist das möglich?
Ja, was regex Geschmack? Könnten Sie auch die Beispieltexte und die erwartete Ausgabe hinzufügen? Bitte teilen Sie den Code. Ihre Regex ist nicht korrekt, da limitierende Quantifizierer innerhalb einer Zeichenklasse platziert werden. –
Das ist Solrs Regex, wahrscheinlich mit Java –
Ok, probiere ['\ b (?! [DD] \.?? [RR] \ b) ([a-zA-Z]) \.? ? ([a-zA-Z]) \ b'] (https://regex101.com/r/mW8lV6/2). Oder ['(? I) \ b (?! D \.?? R \ b) ([a-z]) \.? ? ([a-z]) \ b'] (https://regex101.com/r/mW8lV6/3). –