0

这是我正在使用的当前表达式,但是当我输入一个值时,当我输入超过 1 个时它只接受 1 个字母,我得到一个无效的输入。

"regex":"/^(?:[a-zA-Z\ \']{30}|)$/",

什么类型的表达式可能适合我正在寻找的输入?

前任:

约翰·富兰克林

或者

(空白输入)

4

3 回答 3

4

以下内容应该适合您:

/^([a-zA-Z ']*)$/

我已经对其进行了测试,它似乎符合您的需求。

为清楚起见,*表示“匹配 0 或任意数量的字符”,根据我的测试,它满足您的“空白”要求。

于 2012-09-21T02:22:08.297 回答
1

字母、空格、撇号或空白:

/^[A-Za-z ']*$/

如果您将其限制为 30 个字符,请替换*{0,30}. 在某些正则表达式风格中,您可以省略0和使用{,30}.

于 2012-09-21T02:17:17.967 回答
0

x{30}意思是“正好 30 个实例x”。听起来您实际上最多需要30 个字符:

/^[a-zA-Z\ \']{0,30}$/

(使用 { m , n } 表示法,意思是“在mn 个实例之间”)。

于 2012-09-21T02:16:04.737 回答