Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 需要匹配任何包含[a-z0-9\x20]但开头或结尾没有空格且没有双空格的字符串_Regex - Fatal编程技术网

Regex 需要匹配任何包含[a-z0-9\x20]但开头或结尾没有空格且没有双空格的字符串

Regex 需要匹配任何包含[a-z0-9\x20]但开头或结尾没有空格且没有双空格的字符串,regex,Regex,到目前为止我有 ^[a-z0-9]+[a-z0-9\x20]+[a-z0-9]+$ 符合所有条件,但不符合双空格。请尝试以下操作: ^[a-z0-9](?: ?[a-z0-9])*$ 如图所示 (如果必须的话,您可以将?:后面的空格替换为\x20)应该可以这样做: ^[a-z0-9]+((\x20)?[a-z0-9]+)*$ 这意味着您可以在开头有字母或数字,一次或多次,后面是一个包含空格0或1次的块,后面是一个或多个字母或数字,可以包含0或多次。 编辑:我认为这应该行得通。字母/数字块

到目前为止我有

^[a-z0-9]+[a-z0-9\x20]+[a-z0-9]+$
符合所有条件,但不符合双空格。

请尝试以下操作:

^[a-z0-9](?: ?[a-z0-9])*$
如图所示


(如果必须的话,您可以将
?:
后面的空格替换为
\x20

应该可以这样做:

^[a-z0-9]+((\x20)?[a-z0-9]+)*$
这意味着您可以在开头有字母或数字,一次或多次,后面是一个包含空格0或1次的块,后面是一个或多个字母或数字,可以包含0或多次。

编辑:我认为这应该行得通。字母/数字块之间只能有0或1个空格。

如何:

^[a-z0-9]+(\x20[a-z0-9]+)*$

一个或多个字母或数字,后跟空格&一个或多个字母/数字,重复0次或多次。

无法匹配(假定)有效字符串
aa
谢谢,但它对我无效(不匹配双空格)。如果这很重要的话,我应该指定我使用的是php。我使用\x20是因为我想确定我只匹配了空格,而没有其他空格。我再次尝试了您的解决方案,无法复制以前的失败。我可能复制粘贴错误-这是漫长的一天。谢谢Trange,这里没用。一定是复制粘贴错了。
^[a-z0-9]+(\x20[a-z0-9]+)*$