Ich habe so regex:Spiel einzelnes Element aus einer Gruppe oder Einzelteilen durch Komma in verschiedenen Ordnungen getrennt
/A|B|A,B|B,A/
Welches ist der beste Weg, es zu Refactoring ist Gruppen mit?
Ich habe so regex:Spiel einzelnes Element aus einer Gruppe oder Einzelteilen durch Komma in verschiedenen Ordnungen getrennt
/A|B|A,B|B,A/
Welches ist der beste Weg, es zu Refactoring ist Gruppen mit?
Da Sie PCRE verwenden, können Sie nur die Teilmuster wickeln Sie mit einfangenden Gruppen wiederholen müssen und dann Rekursion sie nur mit (?n)
Syntax (Subroutinenaufrufe):
(A),(B)|(?2),(?1)|(?1)|(?2)
Siehe regex demo
Hier (A)
fängt A
in Gruppe 1 und (B)
erfasst B
in Gruppe 2, so, um diese Untermuster später im Muster zu verwenden, benutzen Sie einfach (?1)
zum ersten Untermuster und (?2)
zum Wiederholen des zweiten Untermusters.
Sie können auch genannt Capture-Gruppen verwenden:
(?<first>A),(?<second>B)|(?&second),(?&first)|(?&first)|(?&second)
Siehe another regex demo
Саша, пожалуйста, поставьте галочку раз уж моё решение сработало. –
Längere Alternativen kommen zuerst sollten: [ 'B, A | A, B | A | B '] (https: // regex101.com/r/jT8jO1/1). Warum Gruppen verwenden? –
'/ ([AB]) (, (?! \ 1) [AB])? /'? – Biffen
@Biffen A B waren wahrscheinlich Platzhalter für längere Muster OP bitte die ganze Sache zur Verfügung stellen – cvsguimaraes