Splunk Search

Regex search help

nangrosso
Engager

I was asked to " update a search to append a final ' | regex PatternStringMatch="[A-Z]" query that will look for anything in that field that has both a letter and a number. Any thoughts?

Labels (1)
0 Karma
1 Solution

yuanliu
Builder

The OP ask is "has both a letter and a number" (underline is mine).  "\w" will match any single character that is not a "punctuation", so "a" (no number), "1" (no letter), "___" (no letter or number), "a_b_c_", "1_2_3_", etc., will all match.  The following will match "both a letter and a number":

| regex PatternStringMatch="[a-zA-Z].*\d|\d.*[a-zA-Z]"

View solution in original post

0 Karma

ITWhisperer
Legend
| regex PatternStringMatch="\w"
0 Karma

nangrosso
Engager

Thanks for the response but I ran the search it gave me nothing. Any idea what the "W" represents 

0 Karma

ITWhisperer
Legend

backslash lower case w means numbers and letters. upper case letters means not numbers and letters. So, the regex will keep events where the field has letters or numbers. Is this not what you wanted?

0 Karma

yuanliu
Builder

The OP ask is "has both a letter and a number" (underline is mine).  "\w" will match any single character that is not a "punctuation", so "a" (no number), "1" (no letter), "___" (no letter or number), "a_b_c_", "1_2_3_", etc., will all match.  The following will match "both a letter and a number":

| regex PatternStringMatch="[a-zA-Z].*\d|\d.*[a-zA-Z]"

View solution in original post

0 Karma

nangrosso
Engager

Thanks for the detailed explanation 

0 Karma

ITWhisperer
Legend

You are right, the specification is ambiguous - \w with match both a letter and a number (and non-punctuation).

0 Karma