Json Schema验证“空”字符串和空字符串

时间:2018-09-26 05:58:01

标签: regex

我正在尝试为json模式验证器编写一个正则表达式,该表达式应接受除“ null”(空字符串)和空字符串之外的任何文本。我实现了其中一个,但没有两个。有什么办法可以将两者结合起来?

^(?!\\s*$).+

^((?!(NULL)).)*$/i

1 个答案:

答案 0 :(得分:1)

您可以使用

^(?![nN][uU][lL]{2}$)\s*\S.*

请参见regex demo

正则表达式匹配:

  • ^-字符串的开头
  • (?![nN][uU][lL]{2}$)-整个字符串不能为null(不区分大小写)
  • \s*-超过0个空格
  • \S-单个非空白字符
  • .*-任意0个以上的字符。

用法示例:

{
   "type": "string",
   "pattern": "^(?![nN][uU][lL]{2}$)\\s*\\S.*"
}

此外,如果不需要整个字符串匹配,则仅使用"pattern": "^(?![nN][uU][lL]{2}$)\\s*\\S"