-1

我很难找到带有空格的字符串的正则表达式(它可以使用每个字母和数字)。它的长度应为 5 到 25 个字符。

帮助!

4

2 回答 2

6

以下正则表达式将匹配 5 到 25 个字符(含)之间的任何字符串,仅包含数字、字母(大写和小写)和空格字符(ascii 0x20):

[a-zA-Z0-9\x20]{5,25}

替换\x20\s以包含其他“空白”,例如制表符和换行符。

编辑

@MikeM 是正确的;除非这是锚定的,否则它将贪婪地匹配目标中 5-25 字符字符串的每个实例(即,例如,包含允许字母的有效 25 字符字符串的 30 字符字符串仍将返回该 25 字符子字符串的匹配项),显然不是OP想要的。

因此,应该更新上面的正则表达式,以确保它只返回一个匹配项,并且仅当整个目标的长度在 5 到 25 个字符之间时,如下所示:

^[a-zA-Z0-9\x20]{5,25}$

于 2013-02-23T16:25:38.493 回答
0

我想这就是你想要的

^(?=(\s*[a-zA-Z\d]){5,25}$).*$

这将匹配 5 到 25 个数字或字母,它们之间有任意数量的空格

于 2013-02-23T16:29:17.437 回答