求助:编写匹配以空格开头、以$info_max_time$结尾的正则表达式
正则表达式解决方案:匹配指定格式的子串
目标文本
yolo _time<=$info_max_time$ (index=* OR index=_*) $threat_match_value$ [search _time=2022-09-26T11:17:12.000-07:00 index=threat_activity | head 1 | `makemv(orig_sourcetype)` | rename orig_sourcetype as sourcetype | mvexpand sourcetype | return 100 sourcetype]
匹配正则表达式
\s.*?\$info_max_time\$
表达式说明
\s:匹配子串开头的空格(若需严格匹配单个空格,可直接用空格字符替代\s).*?:非贪婪模式匹配任意字符(不含换行符),确保不会过度匹配到$info_max_time$之后的内容\$info_max_time\$:匹配结尾的$info_max_time$,其中\$是对正则特殊符号$的转义,避免被解析为行尾锚点
扩展说明
如果目标文本包含换行,需要匹配跨多行的内容,可将表达式修改为:
\s[\s\S]*?\$info_max_time\$
这里[\s\S]表示匹配任意空白或非空白字符,覆盖换行场景。
内容的提问来源于stack exchange,提问作者Divya Barsode
相关产品推荐
相关产品推荐

