python - '\t' 在 python 正则表达式对象中匹配什么?

标签 python python-3.x

我正在阅读之前对 stackoverflow 问题 ( https://stackoverflow.com/a/38162461/11783775 ) 的回答,其中提到了 '\t' 正则表达式代码,即与选项卡匹配的内容。出于我自己的好奇心,我想创建一个正则表达式对象来查看 '\t' 到底匹配什么,即有多少个空格,但我自己什么也没找到。

这是正则表达式对象:

tabTesterRegex = re.compile(r'''
    (\t)
''', re.VERBOSE)

这是我正在测试的一些文本(底线代表“a”和“b”之间的键盘制表符空格。)

text = '''
a b
a  b
a   b
a    b
a     b
a      b
a       b
a        b
a         b
a          b
a           b
a            b
a             b
a              b
a               b
a                b
a   b
'''

以下是查找匹配项并将其附加到列表的代码。

matchList = []
for match in tabTesterRegex.findall(text):
    matchList.append(match)

print(matchList)

我收到的输出是一个空列表,但我假设 '\t' 将匹配特定数量的空格。

谢谢

最佳答案

\t 用于匹配制表符,与空格不同。如果附加 a\t\t\tb,您将得到:

a b
a  b
a   b
a    b
a     b
a      b
a       b
a        b
a         b
a          b
a           b
a            b
a             b
a              b
a               b
a                b
a           b

请注意,间距可能会根据 IDE 的设置而有所不同。我可能错误地假设您根据前几行输出行使用空格,因为它们不等于制表符的长度,但正如 PyNoob 的评论表明您的编辑器可能正在转换制表符。

关于python - '\t' 在 python 正则表达式对象中匹配什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57403228/

相关文章:

python - Python 中与切片相关的代码中的逻辑错误

python-3.x - 逻辑回归系数没有意义

python - Doctests 在 C 扩展和 Python3 上因 UnicodeDecodeError 而失败

python - 根据边际税率表计算应纳税额

python - NetworkX DiGraph() 到 Graph() 的边权重未求和,如何求和?

python-3.x - NetworkX - 允许重复节点

python - 根据 ID 值删除/保留 numpy 数组行

python - 如何使用该列周围(顶部和底部)值的平均值填充该列的 NaN 值?

python - 使用 rowspan 和 colspan 解析表

python - 在迭代时更新列表列表