单词和空格的正则表达式?

时间:2013-10-08 18:10:45

标签: ruby regex

我正在尝试创建一个匹配单词和空格的正则表达式:

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

它应该是这样的:

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

我需要定义一个方法starts_with_consonant?(s),它接受​​一个字符串,如果以辅音开头则返回true,否则返回false。

为了我们的目的,辅音是“A”,“E”,“I”,“O”,“U”以外的任何字母。

这是一门课程。

2 个答案:

答案 0 :(得分:1)

这似乎有效:

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

使用您的示例(和其他人)查看此live demo


如果您只想在整个输入匹配时进行匹配,请更换^$的外观:

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

请参阅此live demo

答案 1 :(得分:0)

我想这几乎可以满足您的需求:

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