4

空白のみに一致する正規表現を作成するにはどうすればよいですか?

正規表現に基づいてメールの件名と本文を一致させることができるRubyアプリケーションがあります。コードにアクセスできません。

空のメール本文に対してアクションを実行しようとしています。メール本文にすべての改行とスペース文字が含まれている場合、正規表現は一致する必要があります。英数字が1つしかない場合は、一致しません。正規表現では、メール本文の先頭と本文に空白を使用できるようにする必要があります。

次のメール本文は一致しません。改行を表示するために強調表示しました。

メール本文の画像

次のメール本文が一致します。

メール本文の画像

Rubularを使って色んなことをやってみました

私が得ることができる最高のものはです^\s*$が、これは改行と一致します。

4

3 に答える 3

5

何を意味するのかは明確ではありませんが、これは空白のみを含む文字列に一致する正規表現です。

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

さわはあなたが望むものを持っていると思いますが、それを否定する方が簡単です:

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 に答える