Zastanawiam się, czy istnieje jakiś fajny sposób sprawdzenia, czy podciągi łańcuchów pasują do wzorców.Jak sprawdzić, czy podciągi w tablicy ciągów pasują do wzorców z innych ciągów tablicowych
Na przykład mam listę ciągów (lub tablicę):
def Errors = ['File xyz cannot be created: No space left on device', 'File kjh has errors: some_error']
to mam listy ciągów znaków, na przykład def Patterns = ['Tests failed', 'No space left on device', 'Something goes wrong', ...some strings... ]
Chciałbym sprawdzić, czy niektóre elementy listy Patterns
są podciągi elementów Errors
.
W tym przykładzie należy zwrócić prawda, bo Patterns
ma No space left on device
i Errors
ma 'File xyz cannot be created: No space left on device'
.
Wiem, jak napisać to bardzo ulgy i nieefektywne za pomocą dwóch dla pętli i metody contains
, ale wiem, że Groovy ma znacznie bardziej wydajne wbudowane metody. Próbowałem z findAll()
, ale to nie działa w ogóle.
Czy masz jakieś pomysły? Czy istnieje sposób, aby uczynić go bardziej sprytnym?