如何在 netlify-cms Gatsby starter 的 `yaml` 文件中按范围限制字符数
How to limit the number of characters by range in `yaml` file in netlify-cms Gatsby starter
我正在使用 gatsby 并使用 gatsby-starter-netlify-cms
我正在尝试为小部件中的字符数添加验证 string
我在文档中读到我们可以使用 pattern
和 regex
来实现验证
在这里你可以看到他们是如何使用它的
fields:
- label: "Title"
name: "title"
widget: "string"
pattern: ['.{20,}', "Must have at least 20 characters"] // this using regex
- {label: "Layout", name: "layout", widget: "hidden", default: "blog"}
- {label: "Featured Image", name: "thumbnail", widget: "image", required: false}
- {label: "Body", name: "body", widget: "markdown"}
comment: 'This is a multiline\ncomment'
所以我尝试这样做
pattern: ['.{20,50}', "Must have 20 - 50 characters"]
然后尝试这样做
widget: "string", pattern: ['^[\s\S]{20,50}$', "Page Title should be 20-50 characters"]
任何帮助将不胜感激
试试这个:
pattern: ['^.{20,50}$', "Must have at least 20 characters"]
您可以在 RegExr(使用正则表达式更新)中查看它是如何工作的。
解释:
.
: 除换行符外的任何字符
^
: 字符串开始
{20,50}
:限制在 20 到 50 个字符之间
$
:字符串结尾(在您的情况下是可选的)
我正在使用 gatsby 并使用 gatsby-starter-netlify-cms
我正在尝试为小部件中的字符数添加验证 string
我在文档中读到我们可以使用 pattern
和 regex
来实现验证
在这里你可以看到他们是如何使用它的
fields:
- label: "Title"
name: "title"
widget: "string"
pattern: ['.{20,}', "Must have at least 20 characters"] // this using regex
- {label: "Layout", name: "layout", widget: "hidden", default: "blog"}
- {label: "Featured Image", name: "thumbnail", widget: "image", required: false}
- {label: "Body", name: "body", widget: "markdown"}
comment: 'This is a multiline\ncomment'
所以我尝试这样做
pattern: ['.{20,50}', "Must have 20 - 50 characters"]
然后尝试这样做
widget: "string", pattern: ['^[\s\S]{20,50}$', "Page Title should be 20-50 characters"]
任何帮助将不胜感激
试试这个:
pattern: ['^.{20,50}$', "Must have at least 20 characters"]
您可以在 RegExr(使用正则表达式更新)中查看它是如何工作的。
解释:
.
: 除换行符外的任何字符^
: 字符串开始{20,50}
:限制在 20 到 50 个字符之间$
:字符串结尾(在您的情况下是可选的)