logstash 正则表达式

正则表达式

3. 使用给定好的符号去表示某个含义

4. 例如.代表任意字符

5. 正则符号当普通符号使用需要加反斜杠

正则的发展

6. 普通正则表达式

7. 扩展正则表达式

普通正则表达式

. 任意一个字符 

* 前面一个字符出现0次或者多次

[abc] 中括号内任意一个字符

[^abc] 非中括号内的字符

[0-9] 表示一个数字

[a-z]   小写字母

[A-Z] 大写字母

[a-zA-Z] 所有字母

[a-zA-Z0-9] 所有字母+数字

[^0-9] 非数字

^xx 以xx开头

xx$ 以xx结尾

d 任何一个数字

s 任何一个空白字符

扩展正则表达式,在普通正则符号再进行了扩展

? 前面字符出现0或者1次

+ 前面字符出现1或者多次

{n} 前面字符匹配n次

{a,b} 前面字符匹配a到b次

{,b} 前面字符匹配0次到b次

{a,} 前面字符匹配a或a+次

(string1|string2) string1或string2

简单提取IP

8. 1.1.1.1   114.114.114.114 255.277.277.277

9. 1-3个数字.1-3个数字.1-3个数字.1-3个数字

10. [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}

 

?<clientip>  #这部分是增加字段 

[^ ]+  非空格

"[^"]"  非引号

15. (?<clientip>[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}) - - [(?<requesttime>[^ ]+ +[0-9]+)] "(?<requesttype>[A-Z]+) (?<requesturl>[^ ]+) HTTP/d.d" (?<status>[0-9]+) (?<bodysize>[0-9]+) "[^"]+" "(?<ua>[^"]+)"

原文地址:https://www.cnblogs.com/jw-yahui/p/10926885.html