• 1587. 字符串切分


    1587. 字符串切分

    中文English

    现在有一个字符串,首字符代表一级分隔符,分隔不同的键值对key-value;第二个字符代表二级分隔符,分隔key和value;后面的字符串表示待处理的字符串。请给出所有的有效键值对。

    样例

    样例1

    输入:"#:a:3#b:8#c:9"
    输出:[["a","3"],["b","8"],["c","9"]]
    

    样例2

    输入:"#:aa:3#b:853#:9"
    输出:[["aa","3"],["b","853"]]
    

    注意事项

    有效键值对即key和value均不为空的键值对。
    题目保证分隔符不为字母或数字,待处理的字符串中只包含两种分隔符、小写字母和数字,且两个一级分隔符中间最多只出现一个二级分隔符。
    题目保证所给字符串长度不超过1000。

    class Solution:
        """
        @param str: the string need to be processed
        @return: all the valid key-value pairs.
        """
        def StringSeg(self, str):
            #边界检测
            if not str: return []
            
            first_split, second_split = str[0], str[1]
            str_array = [val for val in str.split(first_split) if val]
            results = []
    
            for s in str_array:
                temp_array = [val for  val in s.split(second_split) if val]
                if len(temp_array) == 2:
                    results.append(temp_array)
                    
            return results
  • 相关阅读:
    错误日志记录代码
    将数组转换成datatable
    C#类头注释
    判断当前页面是否接收到了Get或者Post请求
    HttpRequestUtil类
    WeChatUtil类
    返回上一页
    更改同步异步
    限制只能输入数字
    判断浏览器及版本
  • 原文地址:https://www.cnblogs.com/yunxintryyoubest/p/14182320.html
Copyright © 2020-2023  润新知