如何用Python正则表达式去除字符串首尾多余空格(保留词间空格)
用Python正则表达式去除字符串首尾多余空格
嘿,这个需求处理起来挺简单的,用正则表达式就能精准搞定。直接上代码示例:
import re # 原始字符串 data = " Taylors Lakes, VIC " # 使用正则去除首尾的多余空格,保留中间单词间的空格 cleaned_data = re.sub(r'^\s+|\s+$', '', data) print(cleaned_data) # 输出结果: "Taylors Lakes, VIC"
正则表达式解释
咱们拆解一下这个正则 r'^\s+|\s+$':
^:匹配字符串的开头位置\s+:匹配一个或多个任意空白字符(包括空格、制表符等)|:逻辑“或”,用来同时匹配开头和结尾的空格\s+$:$匹配字符串的结尾位置,所以这部分是匹配结尾的一个或多个空白字符
re.sub() 函数会把所有匹配到的内容替换成空字符串,这样就精准去掉了首尾的多余空格,而中间单词之间的空格因为不在开头或结尾,完全不受影响。
额外小技巧
其实如果只是处理首尾空格,Python内置的 strip() 方法更简洁,一行就能搞定:
cleaned_data = data.strip()
不过既然你明确要求用正则表达式,那上面的正则方案就完全符合需求啦。
内容的提问来源于stack exchange,提问作者Haider Ali
相关产品推荐
相关产品推荐

