代码之家  ›  专栏  ›  技术社区  ›  Karma_X

使用Python正则表达式从字符串中提取子字符串

  •  0
  • Karma_X  · 技术社区  · 4 年前

    我正在处理数据帧。我的一篇专栏文章是这样的

                       X
    4028    Toolx-2022-01-18_15-26-09.blf.26
    4029    Temperaturelow-2022-01-18_15-26-09.blf.27
    4031    Temperaturehigh2022-01-18_15-26-09.blf.28
    4032    low2022-01-18_15-26-09.blf.29
    4032    high2022-01-18_15-26-09.blf.30
    Name: X, dtype: object
    

                      X
    4028    2022-01-18 15-26-09 26
    4029    2022-01-18 15-26-09 27
    4030    2022-01-18 15-26-09 28
    4031    2022-01-18 15-26-09 29
    4032    2022-01-18 15-26-09 30
    Name: X, dtype: object 
    

    有人能帮我用Python怎么做吗?

    1 回复  |  直到 4 年前
        1
  •  1
  •   Tim Biegeleisen    4 年前

    我们可以使用 str.extract 在这里:

    df["X"] = df["X"].str.extract(r'(\d{4}-\d{1,2}-\d{1,2})_(\d{2}-\d{2}-\d{2}).*\.(\d+)', r'\1 \2 \3')
    

    这是一个正则表达式 demo .