当前位置:  开发笔记 > 编程语言 > 正文

如何在Python中使用[]拆分字符串

如何解决《如何在Python中使用[]拆分字符串》经验,为你挑选了2个好方法。

所以从这个字符串:

"名[ID]"

我需要这个:

"ID"

我使用str.split('[]'),但它不起作用.它只需要一个分隔符吗?



1> Triptych..:

使用正则表达式:

import re 
s = "name[id]"
re.find(r"\[(.*?)\]", s).group(1) # = 'id'

str.split()采用一个字符串来分割输入.例如:

"i,split,on commas".split(',') # = ['i', 'split', 'on commas']

re模块还允许您通过正则表达式进行拆分,这可能非常有用,我认为这就是您的意图.

import re
s = "name[id]"

# split by either a '[' or a ']'
re.split('\[|\]', s) # = ['name', 'id', '']


这不应该使用懒惰点.尝试r"\\ [([^] [] +)\\]"而不是减少回溯.(是的,它看起来很奇怪,但它确实有效.)在这么短的琴弦上可能没那么重要,但懒惰的点是一个坏习惯.

2> Markus Jarde..:

"name[id]".split('[')[1][:-1] == "id"

要么

"name[id]".split('[')[1].split(']')[0] == "id"

要么

re.search(r'\[(.*?)\]',"name[id]").group(1) == "id"

要么

re.split(r'[\[\]]',"name[id]")[1] == "id"

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有