I am using the following search to extract a field, named 'JobName", from the field named "source"
index="nlg_test_csv_mfjobs" | rex field=source "SPLUNK\\(?[A-Z0-9]+)*_REPORT.*DETAILS.*\.CSV"
and I get this error:
Error in 'rex' command: Encountered the following error while compiling the regex 'SPLUNK\(?[A-Z0-9]+)*_REPORT.*DETAILS.*\.CSV': Regex: unmatched parentheses
I cannot find where the parenthesis are unmatched, unless they are being affected by the regular expression. The expression works in various online regex testers. I am concerned about some Splunk specific syntax that I may not be taking into account.
The right parenthesis needs to be escaped.
Depending on the data you are trying to match, one or more of the dots may need to be escaped as well.
I am not a regx expert, but "guessed" that something was messing with the parenthesis (based on the error). Ultimately, this worked...
rex field=source "SPLUNK\(?[A-Z0-9]+)_REPORT.DETAILS.*.CSV"
Note that the string is being modified by the page after I submit. The string here is NOT correct. Let's try this. Note that the real search string does not have the outer quotes.
" rex field=source "SPLUNK\(?[A-Z0-9]+)_REPORT.DETAILS.*.CSV" "
So parens are not literally in your events. Didn't guess that without sample data. The new regex doesn't work in regex101.com, BTW, but that's probably a markup problem. If you put your regexes inside back-tics it won't be messed with by the site.
Give this a try
index="nlg_test_csv_mfjobs" | rex field=source "SPLUNK\\\(?<JobName>[A-Z0-9]+)*_REPORT\.DETAILS\.CSV"