我正在尝试在 yang 模型中创建一个正则表达式以不允许 * 和 ? 字符。字符串 * 和 ?不应允许作为输入。
.e.g. - abc* - should be okay
- * - is not okay and should be rejected
Similarly string ("?") should be rejected.
尝试了正则表达式'[^?+' 拒绝任何出现 * 和 ? 的字符串。例如,abc*、*abc、* 和 ?所有这些都被拒绝了。
YANG 使用正则表达式的 XML 架构 (XSD( 风格,但这种情况在大多数风格中都是相似的。如果我理解正确,您希望禁止字符串以字符开头 *
和 ?
.
[^*?].*
上面说:字符串始终至少有一个字符,其中第一个字符可以是除*
或?
之外的任何字符,后跟任意数量的任意字符。
您可以在此处阅读有关 YANG 正则表达式的详细信息。请注意,在不同版本的 XSD 架构中定义的正则表达式之间存在细微差异,并且 YANG 依赖于 RFC7950(和RFC6020(的规范引用部分中定义的正则表达式。