2024年05月16日 Python re 匹配空格 极客笔记
在正则表达式中,空格是一个常见的特殊字符。在匹配文本时,我们经常需要用正则表达式来匹配空格,包括空格、制表符和换行符。在这篇文章中,我们将详细讨论如何使用 Python 中的 re 模块来匹配不同类型的空格字符。
首先,让我们来看一下在正则表达式中如何匹配空格字符。在正则表达式中,空格字符用 \s
来表示,这个元字符可以匹配任意空格字符,包括空格、制表符和换行符。下面是一个示例代码,演示如何使用 \s
来匹配空格字符:
import re
# 匹配所有空格字符
text = "Hello World\nHello\tWorld"
pattern = r'\s+'
result = re.findall(pattern, text)
print(result)
运行上面的代码,输出如下:
[' ', '\n', '\t']
在这个示例中,我们使用 \s+
来匹配所有的空格字符。这里的 +
表示匹配前面的元字符(即空格)一次或多次。所以在这个示例中,我们成功匹配到了字符串中的所有空格字符。
空格在正则表达式中还有一些特殊的用途。比如,我们可以使用空格来匹配一定数量的空格字符。下面是一个示例代码:
import re
# 匹配两个空格字符
text = "Hello World"
pattern = r'\s{2}'
result = re.findall(pattern, text)
print(result)
运行上面的代码,输出如下:
[' ']
在这个示例中,我们使用 \s{2}
来匹配两个连续的空格字符。这里的 {2}
表示匹配前面的元字符(即空格)恰好两次。所以在这个示例中,我们成功匹配到了字符串中的两个空格字符。
有时候,我们可能需要匹配空格之外的字符。在正则表达式中,除了 \s
表示空白字符外,还有 \S
表示非空白字符。下面是一个示例代码,演示如何使用 \S
来匹配非空白字符:
import re
# 匹配所有非空白字符
text = "Hello World"
pattern = r'\S+'
result = re.findall(pattern, text)
print(result)
运行上面的代码,输出如下:
['Hello', 'World']
在这个示例中,我们使用 \S+
来匹配所有的非空白字符。这里的 +
表示匹配前面的元字符(即非空白字符)一次或多次。所以在这个示例中,我们成功匹配到了字符串中的所有非空白字符。
在本文中,我们介绍了如何使用 Python 中的 re 模块来匹配不同类型的空格字符。我们学习了如何使用 \s
来匹配空格字符,以及如何使用 \S
来匹配非空白字符。
本文链接:http://so.lmcjl.com/news/4668/