Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.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 在配置文件文本中,我想添加一个正则表达式,确保用户输入至少50个字符_Regex - Fatal编程技术网

Regex 在配置文件文本中,我想添加一个正则表达式,确保用户输入至少50个字符

Regex 在配置文件文本中,我想添加一个正则表达式,确保用户输入至少50个字符,regex,Regex,我希望用户能够输入带有空格(我添加了空格)的配置文件文本,但也允许逗号和点。现在,如果用户的文本中有逗号,则会出现错误。 我用过这个: /^[a-zA-Z0-9 ]{50,}+$/ 谢谢。我相信您需要的是以下正则表达式: /^([a-zA-Z0-9\s,.]+){50,}$/ 说明:允许一个或多个字母(大写和小写)、数字(0-9)、逗号和至少50个字符长的句点 我将空格替换为\s,这样可以更清楚地看到您的空格也被编辑为允许一个点。您可以尝试以下正则表达式: /^[a-zA-Z0-9\s,

我希望用户能够输入带有空格(我添加了空格)的配置文件文本,但也允许逗号和点。
现在,如果用户的文本中有逗号,则会出现错误。
我用过这个:

 /^[a-zA-Z0-9 ]{50,}+$/

谢谢。

我相信您需要的是以下正则表达式:

/^([a-zA-Z0-9\s,.]+){50,}$/
说明:允许一个或多个字母(大写和小写)、数字(0-9)、逗号和至少50个字符长的句点


我将空格替换为\s,这样可以更清楚地看到您的空格也被编辑为允许一个点。

您可以尝试以下正则表达式:

/^[a-zA-Z0-9\s,.]{50,}$/
添加
允许和。还有\s允许空间。

{50,}
确保输入至少为50个字符。

您能显示错误吗?仍然对所有格量词的原因感到好奇。@Loamhoof:通常,在没有所有格量词的版本中,正则表达式引擎在遇到无效字符时可能会通过不执行回溯来进行优化。我认为添加所有格量词可能是为了确保无论引擎的实现如何,都不会进行回溯。@nhahdh我知道所有格量词是什么。但是他的表达式中只有一个术语,所以基本上,在任何情况下都不可能回溯。@Loamhoof:一个简单的实现在遇到无效字符时会回溯,在回溯的每一步中,它都会尝试匹配它失败的
$
,直到它到达空字符串并失败。您需要转义。因为这将是一个通配符,否则也是\。我相信当它在
[]
中时,没有必要转义
。所以代码会起作用fine@Shawn不,你不需要在角色类中。此外,\s还允许\r\n\t。即使它更容易阅读,也应该避免(因为这不是必需的行为)。@Loamhoof我不确定这一点?你有参考资料吗?我的经验是\s是空格,\t是制表符等等…@Shawn的两位评论家:)除此之外,它也不允许点。它不是{0,50}所以他们输入0个字符到50个字符吗?哦,读错了问题,对不起!是的{50,}我想他说的最多50个字符。你必须去掉括号和
+
。是的,我想这就行了。我还必须加上æå,结果是:/^([a-zA-Z0-9\s,.æå]+){50,}$/-非常感谢