要列出的 Python 字符串?

标签 python regex

我正在尝试将字符串转换为列表

 str = "ab(1234)bcta(45am)in23i(ab78lk)"

预期输出

 res_str = ["ab","bcta","in23i"]

我尝试从 str 中删除括号。

 re.sub(r'\([^)]*\)', '', str)

最佳答案

您可以使用带有前瞻的否定字符类:

>>> s = "ab(1234)bcta(45am)in23i(ab78lk)"
>>> print (re.findall(r'[^()]+(?=\()', s))
['ab', 'bcta', 'in23i']

正则表达式详细信息:

  • [^()]+:匹配任意一个非()
  • 的字符
  • (?=\():前瞻断言前面有一个(

关于要列出的 Python 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62701361/

相关文章:

javascript - 正则表达式 查找 4 位数字前后的逗号

C 中更清晰的正则表达式代码?

python - 如何以模块化的方式设计应用程序?

python - 除了 Python 编解码器错误?

python - 使用python sqlalchemy,如何定义多列主键

java 等价于正则表达式来替换字符串中直到特定字符的所有字符

regex - 我如何需要在 vim 中转义搜索字符串?

python - Pyinstaller 错误运行脚本与 pyzmq 依赖

python - 通量变异性分析仅适用于隔间之间的传输 react ?

java - STEP 文件中实例的正则表达式?