我正在尝试对URL进行验证,只接受'https'并拒绝'https'。我正在使用form_field_validator,我可能知道如何使用它。但是,我不知道如何编写正则表达式。有人能帮助我解决这个问题吗?这是下面的代码。
url_validator.dart
import 'package:form_field_validator/form_field_validator.dart';
class UrlValidator extends TextFieldValidator {
UrlValidator({required String errorText}) : super(errorText);
// I would like to validate only 'https' but this code doesn't work
var urlPattern =
r'https';
@override
bool isValid(String? value) => RegExp(urlPattern).hasMatch(value!);
}
字符串
验证器.dart
import 'package:form_field_validator/form_field_validator.dart';
final urlValidator = MultiValidator([
UrlValidator(errorText: 'URL is invalid'),
]);
型
3条答案
按热度按时间2uluyalo1#
您可以使用正则表达式来验证Flutter中的URL,使用form_field_validator包。要仅接受“https”URL并拒绝“http”URL,您可以使用以下正则表达式模式和RegExp验证器:
第一个月
ui7jx7zq2#
我看到你想使用正则表达式来验证URL,并且只接受那些以'https'开头的URL,而拒绝'http'。你走在正确的道路上,但是你在url_validator.dart中提供的正则表达式模式没有正确定义你想要的规则。你可以通过使用这样的正则表达式来实现这一点:
字符串
bmp9r5qi3#
试试这个正则表达式,希望能成功。
字符串