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

如何移除字符串中间的空格但保留首尾空格

解决方案

要实现保留字符串首尾空格、移除单词间所有空格的需求,这里提供两种实用的实现方式(以Python为例):

方法一:拆分首尾空格与中间内容处理

通过分离首尾空格和中间文本,单独处理中间部分的空格后再拼接:

original_str = ' Swarnendu Pal is  a good boy '
# 提取开头空格的数量
leading_space_count = len(original_str) - len(original_str.lstrip())
# 提取结尾空格的数量
trailing_space_count = len(original_str) - len(original_str.rstrip())
# 移除中间部分的所有空格
processed_middle = original_str.strip().replace(' ', '')
# 拼接得到最终结果
final_str = ' ' * leading_space_count + processed_middle + ' ' * trailing_space_count

print(repr(final_str))  # 输出:' SwarnenduPalisagoodboy '

方法二:正则表达式替换

利用正则的正向断言,精准匹配单词之间的空格(不涉及首尾空格)并替换为空:

import re

original_str = ' Swarnendu Pal is  a good boy '
# 匹配两个非空白字符之间的一个或多个空格,替换为空
final_str = re.sub(r'(?<=\S)\s+(?=\S)', '', original_str)

print(repr(final_str))  # 输出:' SwarnenduPalisagoodboy '

说明

  • 两种方法都能保留原始字符串的首尾空格数量,完全符合需求;
  • 正则方法更简洁,适合快速实现;拆分处理的方式逻辑更直观,便于理解和修改。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 14:05:39