The error parsing: function arrays.filter_regex_contains not found indicates that the function is either deprecated or not available in the specific version of the YARA-L language used by your Google SecOps environment.
While arrays.filter_regex_contains was documented as a valid function, modern YARA-L often encourages using loops and the re.regex() function for array filtering.
The Modern YARA-L Approach (Using any or all Keywords)
Instead of using a dedicated filter_regex_contains function, the standard and supported way to check if an array contains an element matching a regular expression is to use the any or all keywords with a lambda-style expression in your rule's condition section.
Here is how you would check if any element in an array matches a regular expression:
rule check_array_regex { meta: description = "Checks if any entry in an array matches a regex" events:
// Assuming $e.target.labels is the array of strings you want to check
$array_of_strings = $e.target.labels condition:
// Check if ANY element in the array ($value) matches the regex
any($array_of_strings, $value, re.regex(strings.to_lower($value), "suspicious_keyword.*")) }