【问题标题】:Json schema pattern to exclude numbers and special characters in string用于排除字符串中的数字和特殊字符的 Json 模式模式
【发布时间】:2018-02-05 09:48:21
【问题描述】:

我正在研究一种 JSON 模式模式来排除字符串中的数字和特殊字符,这就是我现在所拥有的:

"properties": {
  "applicationName": {
    "description": "TPG Application Name",
    "type": "string",
    "pattern": "[^0-9!@#$%^&*()_+\\-=\\[\\]{};':\"\\\\|,.<>\\/?\\s\\n]"
},

这没有按预期工作,例如它不允许空格。

输入 JSON:

{
   "applicationName": "TestName",    
}

【问题讨论】:

  • 如果我也想要空间?
  • 问题出在哪里?
  • 它的工作谢谢你

标签: regex json-schema-validator


【解决方案1】:

根据"[^0-9!@#$%^&amp;*()_+\\-=\\[\\]{};':\"\\\\|,.&lt;&gt;\\/?\\s\\n]" 模式判断,您希望匹配除数字、空格和特殊字符(标点和符号)之外的任何字符。在这里,空格无法匹配,因为\s 存在于否定字符类中,并且模式部分匹配,即它将验证包含字符集中列出的字符以外的任何字符串。 ?a! 将匹配,因为有 a,例如

最简单的解决方案是匹配字母和空格,从字符串的开头到结尾:

"^[A-Za-z\\s]*$"

详情

  • ^ - 字符串开头
  • [A-Za-z\\s]* - 0+ 个字母或空格
  • $ - 字符串结束。

【讨论】:

    猜你喜欢
    • 2017-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-27
    • 2017-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多