Fix

"invalid or unsupported Perl syntax" in Go Regex

Fix the Perl syntax error in Go regex by replacing unsupported Perl features like lookaheads with RE2-compatible patterns or multiple regex checks.

The error "invalid or unsupported Perl syntax" occurs because Go's regexp package uses RE2 syntax, which does not support Perl-specific features like lookaheads or backreferences. Replace the unsupported Perl syntax with standard RE2-compatible patterns. For example, change (?=...) (lookahead) to a simpler pattern or use strings.Contains for logic that requires lookahead.

// Incorrect: Perl lookahead syntax
re := regexp.MustCompile(`(?=.*[A-Z])(?=.*[a-z])`) // Error: invalid syntax

// Correct: Use multiple checks or simpler patterns
hasUpper := regexp.MustCompile(`[A-Z]`) 
hasLower := regexp.MustCompile(`[a-z]`) 
if hasUpper.MatchString(s) && hasLower.MatchString(s) {
    // Valid
}