2013-03-12 151 views
2

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

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

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

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

Imgur image of email body

以下电子邮件机构将相匹配。

Imgur image of email body

使用Rubular

我能得到最好的我已经试过各种事情是^\s*$但这匹配换行符。

+6

我以为你说你想匹配换行符? – 2013-03-12 17:13:41

+0

我会建议你发布你想要匹配的邮件和你想要跳过的邮件的例子。 – fmendez 2013-03-12 17:16:17

+0

这就是我说的吗?我可以将一个换行符与单一RegEx匹配,但其他条件如何? – 2013-03-12 17:20:06

回答

2

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

/\A\s*\z/ 
+0

到目前为止,这似乎工作! – 2013-03-13 17:12:01

0

没有正则表达式:

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

不能使用代码。 :( – 2013-03-12 17:43:16

+0

“不能使用代码”是什么意思?你不能编程一个解决方案,并且必须打印它并使用剪刀剪掉页面中的违规行吗?如何60's – 2013-03-12 22:46:08

+0

这不是一个时间机器,它只是注册表输入是通过应用程序公开的,我正在使用一个应用程序,并且我不能编辑应用程序代码,谢谢你的建议,但是 – 2013-03-13 17:15:31

1

我想说的泽穗希有你但它更容易否定它:

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

不能使用代码,我只能使用正则表达式 – 2013-03-13 17:04:27

+0

我无法使用代码,因此我无法使用'str!〜'来检查RegEx的反转,但这些表达式可能会派上用场,谢谢。 – 2013-03-13 17:15:58