在Firestore安全规则中使用正则表达式(测试字符串中的空格)

时间:2018-08-18 14:42:24

标签: regex firebase google-cloud-firestore firebase-security firebase-security-rules

我在阅读文档时发现,firestore安全规则公开了.matches()帮助与正则表达式相关的操作。

是否存在类似的东西可以再次测试常规表达式,即我需要检查request.resource.data.username中是否没有空格。

在javascript领域,它会像

!/\s/.test(request.resource.data.username)

1 个答案:

答案 0 :(得分:2)

除空格以外,与任何字符匹配的模式为\S。要匹配0个或多个事件,请在其后应用*,或者如果要匹配1个或多个事件,请使用+量词。要匹配字符串的开头,请使用^(仅在Firebase模式的开头使用时才用作字符串的开头),要匹配字符串的末尾请使用$(仅用作字符串锚点的结尾)在模式末尾)。

所以,使用

.matches(/^\\S+$/)

.matches(/^\\S*$/)