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

Python如何删除字符串中指定子串'(U.S'左侧的所有字符

Python 通用字符串截断实现(删除指定子串左侧全部字符)

核心实现思路:通过字符串内置方法定位目标锚点子串的起始位置,直接从该位置切片保留后续内容,完全不受锚点左侧的字符类型、字符长度影响。

实现代码

def cut_left_of_anchor(origin_str: str, anchor: str) -> str:
    """
    删除原始字符串中指定锚点子串左侧的全部字符
    :param origin_str: 待处理的原始字符串
    :param anchor: 定位用的锚点子串
    :return: 处理后的字符串,找不到锚点时返回原字符串
    """
    anchor_start_idx = origin_str.find(anchor)
    # 找不到锚点时直接返回原字符串,避免报错
    if anchor_start_idx == -1:
        return origin_str
    return origin_str[anchor_start_idx:]


# 测试示例
if __name__ == "__main__":
    test_str = "NOMIGO* TATRA RR ER RR RR RA EEE E RR KH Dollars (U.S. $547,560.00"
    target_anchor = "(U.S"
    processed_str = cut_left_of_anchor(test_str, target_anchor)
    print(processed_str)

运行效果

上述测试用例的输出结果为:
(U.S. $547,560.00

逻辑说明

  • 用str.find()方法获取锚点第一次出现的起始下标,时间复杂度低,不需要做复杂的正则匹配
  • 自带容错处理:如果原始字符串里不存在指定锚点,不会抛出索引错误,直接返回原始字符串
  • 通用性极强:锚点左侧可以是任意内容、任意长度,只要锚点本身准确就能正确截断;后续如果需要换其他锚点做截断,只需要传入新的锚点参数即可,不需要修改核心逻辑

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 12:36:26