Leecode(186)3174.清除数字-1255

给你一个字符串 s 。

你的任务是重复以下操作删除 所有 数字字符:

  • 删除 第一个数字字符 以及它左边 最近 的 非数字 字符。

请你返回删除所有数字字符以后剩下的字符串。

示例 1:

输入:s = "abc"

输出:"abc"

解释:

字符串中没有数字。

示例 2:

输入:s = "cb34"

输出:""

解释:

一开始,我们对 s[2] 执行操作,s 变为 "c4" 。

然后对 s[1] 执行操作,s 变为 "" 。

class Solution:
    def clearDigits(self, s: str) -> str:
        while True:
            index = -1
            # 查找第一个数字字符
            for i in range(len(s)):
                if '0' <= s[i] <= '9':  # 检查是否为数字字符
                    index = i
                    break
            
            # 如果没有找到数字字符,则结束
            if index == -1:
                break
            
            # 删除数字字符及其左边最近的非数字字符
            if index > 0:
                s = s[:index-1] + s[index+1:]  # 删除左边的非数字字符和数字字符
            else:
                s = s[index+1:]  # 删除数字字符(如果没有左边的非数字字符)

        return s

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值