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

根据文件中的制表符分割字符串

单于俊智
2023-03-14
问题内容

我的文件包含用制表符(“ \ t”)分隔的值。我正在尝试创建一个列表,并将文件的所有值存储在列表中。但是我遇到了一些问题。这是我的代码

line = "abc def ghi"
values = line.split("\t")

只要每个值之间只有一个制表符,它就可以正常工作。但是,如果标签不止一个,则它将标签也复制到值。就我而言,额外的标签通常位于文件中的最后一个值之后。


问题答案:

您可以regex在这里使用:

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split(r'\t+', strs)
['foo', 'bar', 'spam']

更新:

您可以 str.rstrip用来摆脱尾随'\t',然后应用正则表达式。

>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split(r'\t+', yas.rstrip('\t'))
['yas', 'bs', 'cda']


 类似资料:
  • 问题内容: 我有表格形式的命令输出。我正在从结果文件中解析此输出,并将其存储在字符串中。一行中的每个元素都由一个或多个空格字符分隔,因此我正在使用正则表达式来匹配1个或多个空格并将其拆分。但是,每个元素之间都会插入一个空格: 有一个更好的方法吗? 每次拆分后都会添加到列表中。 问题答案: 通过使用,您将捕获该组,如果仅删除它们,则不会出现此问题。 但是,不需要正则表达式,没有指定任何定界符将为您将

  • 问题内容: 我有一个包含各种字符串值的列表。我想一看就拆分列表。结果将是一个列表列表(这将是原始列表的子列表),其中仅包含I的一个实例,我可以使用循环执行此操作,但是有没有 更Python的 方法可以实现此目的? 例子= 结果= 这是我尝试过的方法,但实际上并没有达到我想要的效果,因为它将放入应包含的其他列表中: 问题答案: 我会使用发电机: 此打印 该代码接受任何可迭代的代码,并生成一个可迭代的

  • 问题内容: 我有一个像这样的字符串: 我想拆分该字符串并选择作为分隔符。 我的代码如下所示: 我得到的是一个包含所有字符作为一个条目的数组: 有人知道为什么吗? 我不能用分割字符串吗? 问题答案: 在RegEx中被视为。因此,您需要对其进行转义:

  • 问题内容: 如何在定界符哪里分割此字符串 获得?的输出 问题答案: 你可以使用以下功能:

  • 问题内容: 我有类似的字符串,我需要将它们按字符分开,然后将两个部分分别分配给一个变量。在Ruby中,我会这样做: 显然,Lua没有这么简单的方法。经过一番挖掘,我找不到一种简短的方法来实现自己的目标。我提到我是Lua的一个新手,我需要在Redis的脚本中使用它(因此,它确实应该很小,如果可能的话,只写一个)。 问题答案: 使用模式匹配: 请注意,这是一个魔术字符,因此必须使用进行转义。

  • 这个属性主要用来对字符进行横向分割排版,例如报纸的版面。 1. 官方定义 columns属性是一个简写属性,用于设置列宽和列数。 2. 慕课解释 columns 是 column-width每列宽度,column-count 每列的列数这两个属性的缩写,当列宽和列数的乘积大于元素的宽度时候就不会在分开自动合成一列。当他们的乘积小于元素的外宽的时候,每列的实际宽度可能大于column-width 设