Как проверить регулярное выражение, используя болт-компилятор - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь проверить поле, которое получит URL. Мне нужно проверить его с помощью соответствующего регулярного выражения, но то, что я получил из самой документации Firebase, не работает. Болт компилятора не компилируется, вызывая ошибку:

bolt:37:3: Invalid property or method: 'validate() { this.test((/^(ht|f)tp(s?):\\/\\/[0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*((0-9)*)*(\\/?)([a-zA-Z0-9\\-\\.\\?\\'.
bolt:37:3: Invalid property or method: '\\'\\/\\\\+&=%\\$#_]*)?$/) '.
bolt: Fatal errors: 2
Мой код:
type Category {
  categoryName: String,
  isAvailable: Boolean,
  createdAt: Number,
  photoUrl: LinkURL,
  subcategories: Object | Null
}

type LinkURL extends String {
  validate() { this.test((/^(ht|f)tp(s?):\\/\\/[0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*((0-9)*)*(\\/?)([a-zA-Z0-9\\-\\.\\?\\,\\'\\/\\\\+&=%\\$#_]*)?$/) }
}

1 Ответ

0 голосов
/ 09 января 2019

Я полагаю, у вас есть лишние "(" в начале регулярного выражения

попробуйте это

type LinkURL extends String {
  validate() { this.test(/^(ht|f)tp(s?):\/\/[0-9a-zA-Z]([-.\\w]*[0-9a-zA-Z])*((0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&=%\$#_]*)?$/) }
}
...