You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell:提取特定子串前后的字符串

提取单行文本中特定子串前后的内容

示例文本:
Other text for other things here blah blah TEXT1c:\test\test\ TEXT2 other garbage text here blah blah
需求:编程提取路径c:\test\test\前后紧邻的内容(如示例中的TEXT1和TEXT2),支持同一行存在多个该路径实例的情况,替代固定字符数截取的方案。

解决方案:正则表达式匹配

利用正则匹配非空白字符序列的特性,可精准捕获目标内容,无需依赖固定长度。

代码示例(Python)

import re

# 待处理的单行文本
input_text = "Other text here blah blah TEXT1c:\\test\\test\\ TEXT2 garbage text anotherTEXTc:\\test\\test\\ anotherTEXT2"

# 正则模式:捕获路径前后的非空白内容
pattern = r"(\S+)c:\\test\\test\\ (\S+)"
# 提取所有匹配结果
results = re.findall(pattern, input_text)

# 输出每一组匹配到的内容
for pre_text, post_text in results:
    print(f"路径前内容: {pre_text}, 路径后内容: {post_text}")

说明

  • \S+:匹配任意连续的非空白字符,刚好对应空格分隔的目标内容,自动适配不同长度
  • findall:返回所有符合模式的匹配组,完美支持同一行多个路径实例的场景
  • 路径中的反斜杠需转义为\\,确保正则能正确识别

内容的提问来源于stack exchange,提问作者user2596432

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 22:40:03