1

2 つの単語とその間の 1 つのペースだけに一致する正規表現を作成しようとしています。特別な記号はなく、[a-zA-Z]スペースのみ[a-zA-z]です。

Foo Bar      # Match    (two words and one space only)
Foo          # Mismatch (only one word)
Foo  Bar     # Mismatch (2 spaces)
Foo Bar Baz  # Mismatch (3 words)
4

1 に答える 1

7

あなたがしたい^[a-zA-Z]+\s[a-zA-Z]+$

^   # Matches the start of the string
+   # quantifier mean one or more of the previous character class 
\s  # matches whitespace characters
$   # Matches the end of the string

ここではアンカー^$が重要です。

デモ:

if "foo bar" =~ /^[a-zA-Z]+\s[a-zA-Z]+$/ 
    print "match 1"
end 
if "foo  bar" =~ /^[a-zA-Z]+\s[a-zA-Z]+$/ 
    print "match 2"
end 
if "foo bar biz" =~ /^[a-zA-Z]+\s[a-zA-Z]+$/ 
    print "match 3"
end 

出力:

Match 1
于 2013-01-04T09:22:05.007 に答える