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

如何修剪URL的左右两侧?及移除URL首尾特定字符的问题咨询

修剪URL左右侧内容的解决方案

嗨,我来帮你搞定这个问题!首先得说清楚为啥你用strip()没效果——strip()是按单个字符集合来删除开头结尾字符的,不是按固定字符串匹配。比如你要是写strip('rs--plain'),它会把开头结尾所有属于r、s、-、p、l、a、i、n的字符都删掉,根本不是精准移除开头的rs--和结尾的--plain,所以自然没用啦。

针对你这种固定前缀后缀的场景,给你几个实用的方法:

方法1:直接字符串切片(适合格式完全统一的情况)

如果你的所有网站地址都严格是rs--xxx--plain的格式,那直接通过下标切片最省事:

original = "rs--google.com--plain"
# 去掉开头4个字符(rs--),去掉结尾7个字符(--plain)
trimmed = original[4:-7]
print(trimmed)  # 输出: google.com

方法2:用removeprefix()和removesuffix()(Python 3.9+推荐)

Python 3.9以后新增了这两个专门处理前缀后缀的方法,既直观又安全——就算某个字符串没有前缀或后缀,也不会报错,只会返回原字符串,非常适合批量处理:

original = "rs--google.com--plain"
trimmed = original.removeprefix("rs--").removesuffix("--plain")
print(trimmed)  # 输出: google.com

方法3:正则表达式(适合复杂/多变的格式)

如果你的前缀后缀可能有变体(比如偶尔出现rs---xxx--plain这种情况),用正则表达式灵活性更高:

import re

original = "rs--google.com--plain"
# 匹配开头的rs--,中间的内容,结尾的--plain
pattern = r'^rs--(.*?)--plain$'
match_result = re.match(pattern, original)
if match_result:
    trimmed = match_result.group(1)
    print(trimmed)  # 输出: google.com

根据你的需求,我最推荐方法2,简单直接还容错性好,批量处理列表的时候直接循环用就行~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 14:43:13