在和 codec/multiline 搭配使用的时候,需要注意一个问题,grok 正则和普通正则一样,默认是不支持匹配回车换行的。就像你需要 =~ //m 一样也需要单独指定,具体写法是在表达式开始位置加 (?m) 标记。
\s 空格,和 [\n\t\r\f] 语法一样
(\s*\S+\s*).* 匹配0个或者多个前导字符
简单demo:
SELECT t.* FROM
(
SELECT
t1.sn AS clientSn,
t1.userNick,
t1.mobilePhone,
t3.personName,
t2.availableBalance,
(SELECT IFNULL(SUM(amount) , 0) FROM ClientRechargeOrder t WHERE t.clientSn= t1.sn AND t.status ='2') AS rechargeAmount,
(SELECT IFNULL(SUM(amount) , 0) FROM ClientWithDrawOrder t WHERE t.clientSn= t1.sn AND t.status IN ('1','2','3','4') ) AS withdrawAmount,
( (SELECT IFNULL(SUM(capitalBalance) , 0) FROM ProductRepayment t WHERE t.clientSn
logstash (?m) 经典例子
最新推荐文章于 2023-11-20 21:00:00 发布
本文介绍了Logstash中multiline codec的使用,特别是配合正则表达式处理包含回车换行的文本。重点讲解了如何通过添加(?m)标记来支持匹配回车换行,并给出了相关示例,包括不带(?m)和带(?m)的正则表达式的区别及匹配结果。
摘要由CSDN通过智能技术生成