【问题标题】:Regex pattern to allow space正则表达式模式以允许空间
【发布时间】:2018-12-06 11:49:53
【问题描述】:

我有一个正则表达式,它允许一个大写字母、一个小写字母、8-16 个字符和大多数特殊字符,包括空格。我想在正则表达式中添加允许空间。

我试过了:

  1. Blank spaces in regular expression

  2. Regex to allow alphanumeric, spaces, some special characters

  3. Java space and newline regex for split

我的正则表达式如下:

(?=^.{8,16}$)(?=.*[\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\>\=\?\@\[\]\{\}\\\\\^\_\`\~\|])(?=.*[a-z])(?=.*[A-Z])(?!.*\s)[0-9a-zA-Z\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\>\=\?\@\[\]\{\}\\\\\^\_\`\~\|]]*$

我只想在其中添加空间。我试过 \s[ ]? 但没有任何效果。

我已经检查了https://regex101.com/ 上的regex

任何建议将不胜感激。

【问题讨论】:

  • @Goku 没有什么对我有用我已经添加了这种类型的空间并在给定的站点上检查了..但没有工作
  • @Goku 不工作 (?=^.{8,16}$)(?=.*[\!\"\#\$\%\&\'()*\+\ ,\-\.\/\:\;\\=\?\@[]\{\}\\\\\^_`\~\|])([\w ]+)(? =.*[a-z])(?=.*[A-Z])(?!.*\s)[0-9a-zA-Z\w\!\"\#\$\%\&\'() *\+\,\-\.\/\:\;\\=\?\@[]\{\}\\\\\^_`\~\|]*$
  • 嗨@Annie我认为你的问题是“(?!。* \ s)”,它转换为“无空格”并包含空格。但我不能肯定地说,因为我仍然没有得到你想要完成的确切内容并且没有有效的测试字符串。只有一个提示:您可以保存您的正则表达式,包括。在 regex101.com 上输入示例并通过链接分享。

标签: java android regex matcher


【解决方案1】:

分组可能会出错。

就我使用 RegEx 而言,[ ] 或 \s 将支持单个空格

【讨论】:

  • 是的,我会测试并尝试修复它,但是如果您根据您正在测试的内容向我发送测试字符串,那么我会更容易分析。
猜你喜欢
  • 2021-06-09
  • 1970-01-01
  • 1970-01-01
  • 2013-03-06
  • 2016-10-08
  • 2015-03-19
  • 1970-01-01
  • 2011-08-27
相关资源
最近更新 更多