代码之家  ›  专栏  ›  技术社区  ›  Anindya Chatterjee

如何使用regex查找包含特定模式字符串的行?

  •  0
  • Anindya Chatterjee  · 技术社区  · 16 年前

    我有一个包含1000行数据的脚本文件,其中一些行包含dd/mm/yyyy hh:mm:ss格式的日期字符串。我的目标是找出包含以下模式日期的行

    "Value=10/08/2010 13:39:37", ENDITEM,
    

    "Name=s_1_1_81_0", "Value=10/08/2010 13:39:37", ENDITEM,
    // {Siebel_Parse_Web_Page72_S_BC2_S40_R02_F30} = "07/27/2010"   (Some Date)
    Number0*12*Install Date19*08/24/2010 00:00:0015*Unit of Measure9*Per Month19*To Service
    

    “价值= 结束于 ",

    1 回复  |  直到 9 年前
        1
  •  5
  •   Community Mohan Dere    9 年前

    看起来您需要包含以下模式匹配的行:

    "Value=\d{2}/\d{2}/\d{4} \d{2}:\d{2}:\d{2}", ENDITEM,
    

    作为一个 @-quoted C# string literal

    @"""Value=\d{2}/\d{2}/\d{4} \d{2}:\d{2}:\d{2}"", ENDITEM,"
    

    这个 \d 是数字的字符类速记 character class . 这个 {n} finite repetition 说明符。因此, \d{4} 正好匹配4个数字。

    您可以使模式更具体或更少,例如年份 9999

    另请参见

    相关问题