Dopasowanie jednego bądź dwóch wyrazów, pod warunkiem że są rozdzielone separatorem.

0

Okej, więc chcę żeby mi zmatchowało

Kamil
Kuba
Kamil and Kuba

ale nie

Kamil and
and Kuba
and

Na razie mam coś takiego ^(Kamil)?(?(1)(( and )?)|^)(?(3)(Kuba)|(?(1)|(Kuba)))$ (wynik matchowania tutaj), ale niestety to ma dwie wady:

  • Trochę długie (może jest szansa żeby to skrócić?)
  • Muszę napisać Kuba dwa razy (przy dłuższych wyrażeniach to może okazać się kłopotliwe).

Nie mam pomysłu jak zamknąć tego pierwszego Kube w grupę, tak żebym potem mógł zrobić doń backreference :/

Wiecie jak zamienić to wyrażenie na takie żeby matchowało to co chcę, ale żebym nie musiał podawać Kuba (czyli tego drugiego expression) dwa razy?

0

Jeśli pozwolisz na:

Kuba and Kuba

To wystarczy:

K(amil|uba)(and Kuba)?

1 użytkowników online, w tym zalogowanych: 0, gości: 1