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

Python中如何拆分字符串并合并指定相邻字母'al'?

拆分字符串时合并相邻的'al'

给定字符串,例如:

original_words = "installation alcohol international"

需要将其拆分为单个字符的列表,但把所有相邻的a和l合并为al,同时忽略空格,最终得到:

['i', 'n', 's', 't', 'al', 'l', 'a', 't', 'i', 'o', 'n', 'al', 'c', 'o', 'h', 'o', 'l', 'i', 'n', 't', 'e', 'r', 'n', 'a', 't', 'i', 'o', 'n', 'al']

方法一:遍历字符(新手友好)

通过逐个遍历字符,跟踪前一个字符的状态来实现合并,逻辑清晰易懂:

original_words = "installation alcohol international"
result = []
prev_char = None

for char in original_words:
    # 跳过空格
    if char == ' ':
        continue
    # 检查当前字符是l且前一个是a,执行合并
    if prev_char == 'a' and char == 'l':
        result.pop()  # 移除之前添加的单个a
        result.append('al')
        prev_char = None  # 重置前字符,避免重复匹配
    else:
        result.append(char)
        prev_char = char

print(result)

方法二:正则表达式(简洁高效)

利用正则的优先匹配特性,先匹配al,再匹配单个字符,同时先去除字符串中的空格:

import re

original_words = "installation alcohol international"
# 先移除所有空格
clean_string = original_words.replace(" ", "")
# 优先匹配'al',再匹配任意单个字符
result = re.findall(r'al|.', clean_string)

print(result)

两种方法都能得到目标结果,第一种适合新手理解逻辑,第二种代码更简洁。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 10:32:54