splunk 之预备学习 正则表达式基础
摘自百度百科
^
匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。
$
匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。
*
匹配前面的子表达式任意次。例如,zo*能匹配“z”,也能匹配“zo”以及“zoo”。
+
匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。
?
匹配前面的子表达式零次或一次。例如,“do(es)?”可以匹配“do”或“does”中的“do”。?等价于{0,1}。
{n}
n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但是能匹配“food”中的两个o。
{n,}
n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。
{n,m}
m和n均为非负整数,其中n
非获取匹配,反向否定预查,与正向否定预查类似,只是方向相反。例如“(?
此处用或任意一项都不能超过2位,如“(?
实例:
字符串;tel:086-0666-88810009999
原始正则:"^tel:[0-9]{1,3}-[0][0-9]{2,3}-[0-9]{8,11}$"
速记理解:开始 "tel:普通文本"[0-9数字]{1至3位}"-普通文本"[0数字][0-9数字]{2至3位}"-普通文本"[0-9数字]{8至11位} 结束"
等价简写后正则写法:"^tel:\d{1,3}-[0]\d{2,3}-\d{8,11}$" ,简写语法不是所有语言都支持。
实例:中文乱码先不用去管他,我们先搞定正则表达式
2017-02-04,15:20:46,234,[ERROR],[JAVAMethod.java],238,锟斤拷证锟斤拷业锟斤拷锟绞憋拷锟\xBD\x3A,Method,[155,锟斤拷锟斤拷
正则表达式:^(?:[^,\n]*,){8}\[(\d+)
要提取一下内容,起个名字TestQueryTime,用这个:^(?:[^,\n]*,){8}\[(?P\d+)
TIPS:
正则表达式 ^(?:[^,\n]*,)
匹配结果:
共找到 1 处匹配: 2017-01-04,
BTW:笔记本电脑持续卡,博客更新将放慢。
表扬一下笔记本电脑维修的同学,新加了一块固态硬盘,笔记本运行速度提高了20-30%,编码很舒畅!
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?