Regex 带有有限新行的正则表达式搜索

Regex 带有有限新行的正则表达式搜索,regex,notepad++,Regex,Notepad++,我有以下案文: KN_Divers_Blau | -6.429897 8.010333 -0.80 0.422 -22.14101 9.28122 Ind_ROA_Ave | .3407456 .3389998 1.01 0.315 -.3241539 1.005645

我有以下案文:

                                KN_Divers_Blau |  -6.429897   8.010333    -0.80   0.422    -22.14101     9.28122
                                   Ind_ROA_Ave |   .3407456   .3389998     1.01   0.315    -.3241539    1.005645
                              Ind_Tobin_Q1_Ave |  -.5065654   .2104229    -2.41   0.016    -.9192797   -.0938511
                                Ind_Growth_Ave |  -1.404911   1.852805    -0.76   0.448    -5.038922    2.229101
                                       Pat_Dum |  -18.31015   5.452194    -3.36   0.001    -29.00385   -7.616457
                                               |
                                          year |
                                         1981  |  -5.575117   2.805975    -1.99   0.047    -11.07863   -.0715993
                                         1982  |  -6.171125   5.447273    -1.13   0.257    -16.85517    4.512919
                                         1983  |   -11.8282    8.84588    -1.34   0.181    -29.17812    5.521726
                                         1984  |  -20.39602   11.73682    -1.74   0.082    -43.41611    2.624069
                                         1985  |   -23.7097   14.29652    -1.66   0.097    -51.75028    4.330874
                                         1986  |  -29.43432   16.51849    -1.78   0.075    -61.83297    2.964339
                                         1987  |  -35.30922    18.5138    -1.91   0.057    -71.62137    1.002936
                                         1988  |  -49.09056   19.95166    -2.46   0.014    -88.22289   -9.958242
                                         1989  |  -53.98487   21.88913    -2.47   0.014    -96.91725   -11.05248
                                         1990  |  -67.58938   23.41111    -2.89   0.004    -113.5069   -21.67185
                                         1991  |  -78.59984   25.52294    -3.08   0.002    -128.6594   -28.54026
                                         1992  |  -88.89806   28.22778    -3.15   0.002    -144.2628   -33.53332
                                         1993  |  -98.40131   31.35391    -3.14   0.002    -159.8975   -36.90512
                                         1994  |   -102.953   33.25041    -3.10   0.002    -168.1689   -37.73712
                                         1995  |  -116.2812   37.25681    -3.12   0.002     -189.355   -43.20726
                                         1996  |  -118.0298   38.76035    -3.05   0.002    -194.0527   -42.00698
                                         1997  |  -118.4325    38.4338    -3.08   0.002    -193.8149   -43.05017
                                         1998  |  -123.8912   37.96394    -3.26   0.001     -198.352   -49.43038
                                         1999  |  -128.3908   39.44807    -3.25   0.001    -205.7626   -51.01913
                                         2000  |  -133.2699   40.31404    -3.31   0.001    -212.3401   -54.19972
                                         2001  |   -126.159   37.63045    -3.35   0.001    -199.9658   -52.35232
                                         2002  |  -119.8247   36.05833    -3.32   0.001    -190.5479   -49.10146
                                         2003  |  -109.2157   34.54755    -3.16   0.002    -176.9758   -41.45563
                                         2004  |  -114.1801   33.58204    -3.40   0.001    -180.0465   -48.31378
                                         2005  |          0  (omitted)
                                               |
                                         _cons |  -187.8645   62.81122    -2.99   0.003    -311.0597   -64.66936
                                         
                                         
                             KN_Divers_Blau |   -6.57637   8.068413    -0.82   0.415     -22.4014    9.248663
                                Ind_ROA_Ave |   .3641781   .3411348     1.07   0.286    -.3049088    1.033265
                           Ind_Tobin_Q1_Ave |  -.5070564   .2105863    -2.41   0.016    -.9200911   -.0940217
                             Ind_Growth_Ave |  -1.424116   1.871656    -0.76   0.447    -5.095101    2.246869
                                    Pat_Dum |  -18.51642   5.463958    -3.39   0.001    -29.23319   -7.799652
                                            |
                                       year |
                                      1981  |  -4.660021   2.721933    -1.71   0.087    -9.998702     .678659
                                      1982  |  -5.557028   5.497126    -1.01   0.312    -16.33885    5.224794
                                      1983  |  -10.63977   8.795378    -1.21   0.227    -27.89063    6.611104
                                      1984  |  -18.76668   11.39263    -1.65   0.100     -41.1117    3.578331
                                      1985  |  -23.61831   14.32697    -1.65   0.099    -51.71861    4.481984
                                      1986  |  -29.10203   16.61986    -1.75   0.080     -61.6995    3.495445
                                      1987  |  -34.29028   18.46377    -1.86   0.063    -70.50431    1.923745
                                      1988  |  -48.44084   19.75174    -2.45   0.014    -87.18104    -9.70065
                                      1989  |  -54.73721   22.04372    -2.48   0.013    -97.97281   -11.50162
                                      1990  |  -67.16001   23.65404    -2.84   0.005     -113.554   -20.76601
                                      1991  |  -77.92565   25.97627    -3.00   0.003    -128.8744   -26.97694
                                      1992  |  -88.53438   28.49949    -3.11   0.002     -144.432   -32.63673
                                      1993  |  -97.72113   31.57967    -3.09   0.002    -159.6601   -35.78213
                                      1994  |  -102.3819   33.38187    -3.07   0.002    -167.8557   -36.90815
                                      1995  |  -115.8907   37.23702    -3.11   0.002    -188.9258   -42.85566
                                      1996  |  -118.6755   39.02702    -3.04   0.002    -195.2214   -42.12961
                                      1997  |   -118.675   38.75563    -3.06   0.002    -194.6886   -42.66145
                                      1998  |   -124.622   38.53307    -3.23   0.001    -200.1991   -49.04492
                                      1999  |  -128.1722   39.91359    -3.21   0.001    -206.4569   -49.88741
                                      2000  |  -133.1516    40.6607    -3.27   0.001    -212.9017   -53.40144
                                      2001  |  -126.7362   38.51777    -3.29   0.001    -202.2833   -51.18914
                                      2002  |  -119.7739   36.83191    -3.25   0.001    -192.0145   -47.53344
                                      2003  |  -108.5075   34.97694    -3.10   0.002    -177.1097   -39.90524
                                      2004  |  -111.8748   33.35352    -3.35   0.001    -177.2929   -46.45662
                                      2005  |          0  (omitted)
                                            |
                                      _cons |   -178.691   61.08993    -2.93   0.003    -298.5101   -58.87189
我正在寻找一个可以删除所有年份的正则表达式,因此输出结果如下:

                                KN_Divers_Blau |  -6.429897   8.010333    -0.80   0.422    -22.14101     9.28122
                                   Ind_ROA_Ave |   .3407456   .3389998     1.01   0.315    -.3241539    1.005645
                              Ind_Tobin_Q1_Ave |  -.5065654   .2104229    -2.41   0.016    -.9192797   -.0938511
                                Ind_Growth_Ave |  -1.404911   1.852805    -0.76   0.448    -5.038922    2.229101
                                       Pat_Dum |  -18.31015   5.452194    -3.36   0.001    -29.00385   -7.616457
                                               |
                                               |
                                         _cons |  -187.8645   62.81122    -2.99   0.003    -311.0597   -64.66936
                                         
                                         
                             KN_Divers_Blau |   -6.57637   8.068413    -0.82   0.415     -22.4014    9.248663
                                Ind_ROA_Ave |   .3641781   .3411348     1.07   0.286    -.3049088    1.033265
                           Ind_Tobin_Q1_Ave |  -.5070564   .2105863    -2.41   0.016    -.9200911   -.0940217
                             Ind_Growth_Ave |  -1.424116   1.871656    -0.76   0.447    -5.095101    2.246869
                                    Pat_Dum |  -18.51642   5.463958    -3.39   0.001    -29.23319   -7.799652
                                            |
                                            |
                                      _cons |   -178.691   61.08993    -2.93   0.003    -298.5101   -58.87189
我对regex非常陌生,并尝试在Notepad++中搜索以下内容并将其替换为nothing:

年份。*[\n].*1981.[\n].*2005
问题是它会找到第一个年份列和第二个年份列之间的所有值,并删除这两个列之间的所有值

有没有办法让搜索词在“每一年”列中查找一次?(因此,在我的示例中,它将总共两次查找并替换“年份”列)


非常感谢。

您可以使用以下模式:

^\s*year.*(?:[\r\n]+\s*\d{4}\b.*)*[\r\n]+
..并替换为空字符串

细分:

  • ^
    行的开头
  • \s*
    匹配零个或多个空白字符
  • year.*
    匹配“year”,后跟任意数量的字符
  • (?:
    启动非捕获组。
    • [\r\n]+
      匹配一个或多个换行符
    • \s*
      匹配零个或多个空白字符
    • \d{4}\b.*
      匹配四位数字,后跟任意数量的字符
  • 关闭非捕获组
  • *
    匹配上一组的零次或多次出现
  • [\r\n]+
    匹配一个或多个换行符

感谢您的精彩回答和解释!