Próbuję znaleźć sposób, aby usunąć cały tekst w ciągu przed meczem w Regex. Koduję to w C#.Regex + Usuń cały tekst przed meczem
Na przykład, jeśli ciąg znaków to "cześć, dopasowanie testowe", a wzorzec to "test", chciałbym, aby końcowym wynikiem było "dopasowanie testowe" (tj. Usunąć wszystko przed testem).
Jakieś myśli? Dzięki!
EDYCJA: Prawdopodobnie powinienem być nieco bardziej konkretny w moim przykładzie po przeczytaniu twoich odpowiedzi (i dzięki za nie). Podoba mi się metoda z wyprzedzeniem, ale uprościliśmy mój przykład. Żeby było trudniej, zazwyczaj łańcuchy wyglądać następująco:
„cześć, dopasowanie test test everythingAfter”
Więc jeśli mogę użyć wzorca „test”, to złapie pierwszego. Moim celem jest zastąpienie całego tekstu po drugim dopasowaniu. Tzn .: wynik "testuj wszystko po" ... Przepraszam za to.
nie jestem wystarczająco zaznajomieni z C#, aby napisać kod. Jednak nie używaj RegEx, używaj podstawowych metod łańcuchowych. * szukaj *, aby znaleźć wystąpienie, niż użyj * podłańcuch * przechwytywanie * wszystko po *. –
W przypadku wzorców, które próbujesz usunąć, czy są one zawsze ciągami znaków, czy też czasami są rzeczywistymi wyrażeniami regularnymi? Jeśli pierwsza, użyj "IndexOf" i "Substring" i unikaj kar, których nie potrzebujesz. –
Prawdopodobny duplikat: [Usuń tekst z ciągu, aż osiągnie określoną postać] (http://stackoverflow.com/q/8371922/299327) –