我有一个字符串列表,其中所有字符串大致遵循'foo\tbar\tfoo\n‘格式,因为有三个可变长度段,由两个制表符(\t)分隔,末尾有一个换行符。
我希望删除第一个\之前的文本以外的所有内容,这样它将返回为'foo‘。考虑到第一段的长度是可变的,我不知道如何做到这一点。
发布于 2014-07-17 14:49:47
只需搜索第一个\t字符,并得到它之前的一切。切片让这很容易。
newstr = oldstr[:oldstr.find("\t")]发布于 2014-07-17 14:50:58
使用str.split()
>>> string = 'foo\tbar\tfoo\n'
>>> string.split('\t', 1)[0]
'foo'这会将字符串拆分为'\t‘选项卡字符的第一个匹配项,该字符返回一个包含两个元素的列表。[0]选择列表中的第一个元素,这是第一个'\t‘出现之前字符串的一部分。
发布于 2014-07-17 14:50:28
试着:
t = 'foo\tbar\tfoo\n'
t[:t.index("\t")]https://stackoverflow.com/questions/24806749
复制相似问题