4

如何编写仅匹配空格的正则表达式?

我有一个 Ruby 应用程序,它允许我根据正则表达式匹配我的电子邮件主题和正文。我无权访问代码。

我正在尝试对空的电子邮件正文采取行动。如果电子邮件正文包含所有换行符和空格字符,则正则表达式应该匹配。如果只有一个字母数字字符,它将不匹配。正则表达式应允许在电子邮件正文的开头和开头有空格。

以下电子邮件正文将不匹配。我已经突出显示它以显示换行符。

电子邮件正文的 Imgur 图像

将匹配以下电子邮件正文。

电子邮件正文的 Imgur 图像

我已经尝试过使用 Rubular 的各种方法

我能得到的最好的是^\s*$,但这匹配换行符。

4

3 回答 3

5

目前尚不清楚您的意思,但这是一个匹配仅包含空格的字符串的正则表达式:

/\A\s*\z/
于 2013-03-12T17:24:35.150 回答
1

我会说sawa有你想要的,但否定它更简单:

str !~ /\S/ # true if str contains no non-whitespace chars
str !~ /\w/ # true if str contains no alphanumeric chars (plus _)
于 2013-03-13T03:34:36.877 回答
0

没有正则表达式:

p "  \n  \t".strip.empty? #=> true
于 2013-03-12T17:39:40.063 回答