当前位置: 首页 > 面试题库 >

Python解析括号中的块

益富
2023-03-14
问题内容

用Python解析匹配括号中包含的大量文本的最佳方法是什么?

"{ { a } { b } { { { c } } } }"

最初应该返回:

[ "{ a } { b } { { { c } } }" ]

将其作为输入应返回:

[ "a", "b", "{ { c } }" ]

应该返回:

[ "{ c }" ]

[ "c" ]

[]

问题答案:

代码

For each string in the array:
    Find the first '{'. If there is none, leave that string alone.
    Init a counter to 0. 
    For each character in the string:  
        If you see a '{', increment the counter.
        If you see a '}', decrement the counter.
        If the counter reaches 0, break.
    Here, if your counter is not 0, you have invalid input (unbalanced brackets)
    If it is, then take the string from the first '{' up to the '}' that put the
     counter at 0, and that is a new element in your array.


 类似资料:
  • 本文向大家介绍浅析python 中大括号中括号小括号的区分,包括了浅析python 中大括号中括号小括号的区分的使用技巧和注意事项,需要的朋友参考一下 python语言最常见的括号有三种,分别是:小括号( )、中括号[ ]和大括号也叫做花括号{ }。其作用也各不相同,分别用来代表不同的python基本内置数据类型。 1.python中的小括号( ):代表tuple元组数据类型,元组是一种不可变序列

  • 使用PHP,我如何解析一个JSON对象,该对象包含方括号中的数组,并由管道“|”分隔? 例如,我需要访问“数据”的第二个组件,在本例中是“英语”。假设长度是可变的,因此不能按字符位置进行切片。

  • 问题内容: 显然,阅读后这个问题经常出现 正则表达式,用于检测&循环的分号终止的C ++ 并考虑了一段时间后,我编写了一个函数来返回任意数量的嵌套()中包含的内容 该函数可以轻松扩展到任何正则表达式对象,出于您的想法和考虑,请在此处发布。 任何重构建议将不胜感激 (请注意,我仍然对python还是陌生的,并且不想弄清楚如何引发异常或其他任何东西,所以如果函数无法弄清楚发生了什么,我只是让函数返回“

  • 尽管我在编译/解析方面的知识有限,但我还是敢于为OData$filter表达式构建一个小型递归下降解析器。解析器只需要检查表达式的正确性,并在SQL中输出相应的条件。由于输入和输出具有几乎相同的标记和结构,这相当简单,我的实现实现了我想要的90%。 但是现在我被括号卡住了,括号出现在逻辑表达式和算术表达式的不同规则中。ABNF中的完整OData语法在这里,所涉及的规则的精简版本如下: 这个语法如何

  • 问题内容: 我很好奇,Python编程中的三个不同括号是什么意思?不知道我是否正确,但是如果我错了,请纠正我: 或者,如果这些支架可用于其他用途,欢迎提供任何建议!谢谢! 问题答案: :用于定义可变数据类型-列表,列表推导以及索引/查找/切片。 :定义元组,操作顺序,生成器表达式,函数调用和其他语法。 :两种哈希表类型-字典和集合。

  • 问题内容: 我有以下代码: 在这一行上: 我遇到了错误。 我究竟做错了什么? 问题答案: 括号在正则表达式中有特殊含义。您可以逃脱括号,但是 对于此问题,您实际上根本不需要正则表达式 :