zoukankan      html  css  js  c++  java
  • Grok 正则捕获

    Grok 正则捕获:
    s+(?<request_time>d+(?:.d+)?)s+
    
    
    回顾下:  
    (?:pattern)  
     匹 配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比 ‘industry|
    
    industries’ 更简略的表达式。  
      
    表示括号只是起分隔作用,不将括号中匹配的内容存入内存中  
    因为如果不加?:的话,括号内匹配的内容会放入$1,$2...这些变量中  
      
    1、命名分组格式为(?<grp name>),反向引用时用k<grp name>  
      
    2、命名分组的匹配的结果存在在变量%+变量中,取命名分组值,$+{grp name}.  
    
    ?    表示前面字符出现1次或者0次;
    
    
    (pattern)  
     匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 “”或‘’。  
       
    (?:pattern)  
     匹 配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比 ‘industry|
    
    industries’ 更简略的表达式。
    
    
    begin 123.456 end
    
    
    [elk@dr-mysql01 frontend]$ cat a1.pl 
    my $str='begin 123.456 end';
    
    if ($str =~/s+(?<request_time>d+(?:.d+)?)s+/){  print "$1 is $1
    ";};
    [elk@dr-mysql01 frontend]$ perl a1.pl 
    $1 is 123.456
    
    
    
    1、命名分组格式为(?<grp name>),反向引用时用k<grp name>
    
    2、命名分组的匹配的结果存在在变量%+变量中,取命名分组值,$+{grp name}.
    
    
    zjtest7-frontend:/root/0825# cat a1.pl 
    my $str="  begin 123.456 end  ";
    if ($str =~/(?<request_time>d+.d+)/)
       {
        my ($request_time) = ($+{request_time});  
       print $request_time."
    ";};
    zjtest7-frontend:/root/0825# perl a1.pl 
    123.456
    
    
    zjtest7-frontend:/root/0825# cat a1.pl   
    my $str="  begin 123.456 end  ";  
    if ($str =~/(?<request_time>w+s+d+)/)  
       {  
        my ($request_time) = ($+{request_time});    
       print $request_time."
    ";};  
    zjtest7-frontend:/root/0825# perl a1.pl   
    begin 123  
    

  • 相关阅读:
    Android中实现下拉刷新
    Android中Parcelable接口用法
    Android px、dp、sp之间相互转换
    Android平台调用WebService详解
    Android开发之WebService介绍
    Xamarin.Forms XAML控件的公共属性
    构建伪Update服务器工具isr-evilgrade
    Xcode文件名后的字母含义
    设置USB数据监听
    Xamarin.Forms的基本页面和基本视图
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350269.html
Copyright © 2011-2022 走看看