正则表达式仅匹配空格

时间:2013-03-12 17:09:53

标签: ruby regex whitespace

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

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

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

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

Imgur image of email body

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

Imgur image of email body

我尝试过使用Rubular

的各种事情

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

3 个答案:

答案 0 :(得分:2)

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

/\A\s*\z/

答案 1 :(得分:1)

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

str !~ /\S/ # true if str contains no non-whitespace chars
str !~ /\w/ # true if str contains no alphanumeric chars (plus _)

答案 2 :(得分:0)

没有正则表达式:

p "  \n  \t".strip.empty? #=> true