Firestore对ID(https://firebase.google.com/docs/firestore/quotas)有限制
什么是Javascript正则表达式,用于检查以下方面的约束:
/
).
)或两个句点(..
)组成__.*__
最佳答案
让我们看一下这些要点:
我认为这至少是您选择的编程语言的问题,至少在您告诉我们您具有原始八位字节并希望使用正则表达式来验证原始八位字节序列是有效的UTF-8序列之前。
这将意味着类似于.{1,1500}
这将意味着类似于[^/]{1,1500}
而不是.{1,1500}
。
这意味着类似于(?!\.\.?)
。
这意味着类似于(?!__.*__)
。也许应该意味着不允许任何ID以__
开头和以__
结尾,但是这可能意味着不允许任何ID包含以__
开头/结尾的子字符串。我的方法很安全,并且拒绝包含子字符串的任何内容。
结合以上内容,我们得到如下结果:
^(?!\.\.?$)(?!.*__.*__)([^/]{1,1500})$
将最大长度缩短到10,这是一些测试用例:
接受
foo
foo.
foo..
拒绝
bar/
12345678901
foo__bar__
.
..
Fiddle