只允许字符或空格的正则表达式

5

我需要关于正则表达式的帮助。我需要一个jQuery表达式,它只允许两个单词之间有字符或空格。不允许有双空格。

我正在使用以下表达式:

/^[a-zA-Z]+(-_ [a-zA-Z]+)*/

但它无法工作。

例子 空格hello-不允许

hello空格-不允许

hello空格空格hello-不允许

空格hello空格-不允许

hello1234-不允许

hello空格1234-不允许


hello world-允许

hello-允许

hello如何-允许


会有任何标点符号(例如, . ?)吗?是一个完整的句子还是只有两个单词? - Alvin Wong
不要只是单个单词。 - Ishan Jain
3个回答

11

你可以使用这个

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

0

这个正则表达式对我起作用了 ([A-Za-z]( )[A-Za-z]+)


0

我看到您已经有了一个被接受的答案,但这里还有另一种更简洁的选择:

/^\w+( \w+)*$/

以一个单词开头,然后跟随任意数量的单词,每个单词前有一个空格。

请注意,这也接受用单词表示的数字。我不知道这是否符合您的要求。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接