2013-10-08 71 views
-2

我試圖創建一個正則表達式匹配單詞和空格:正則表達式的單詞和空格?

"Hello There" - Match 
"#Hello" - No Match 
"123Hello" - No Match 

它不應該是這樣的:

(*[a-zA-Z]* *) 

我需要定義一個方法starts_with_consonant?(s),需要一個字符串,返回true如果它以輔音開頭,否則爲假。

出於我們的目的,輔音是「A」,「E」,「I」,「O」,「U」以外的任何字母。

這是一門課程。

+2

你爲什麼不試試?另外,你能提供一些關於你想達到什麼的信息嗎? – ppeterka

+0

http://rubular.com/r/x5soHBbt1n這是否意味着它會匹配或不是我不能說,因爲有時它會說沒有匹配,但其他人會顯示並突出顯示一些,所以如果我把#Hello在它會匹配它所有?我現在在學校,或者我會試試 – MikaAK

+1

我不確定我是否理解這個問題。你開始表明你想匹配單詞和空格。你的例子顯示你想匹配一個空間的東西。而你的最終請求表明你想匹配以輔音開始的東西。你能澄清一下嗎? – lurker

回答

1

這似乎工作:

(?<=^|\s)[a-zA-Z]+(\s+[a-zA-Z]+)*(?=\s|$) 

見這個live demo與你的例子(及其他)


工作

如果只想匹配整個輸入相匹配,交換一下變通爲^$

^[a-zA-Z]+(\s+[a-zA-Z]+)*$ 

見這個live demo

0

我想這樣做幾乎任何你想要的東西:

\A(\w*\s+\w+)+\Z