gpt4 book ai didi

c - C POSIX 中的 FTP url 正则表达式

转载 作者:行者123 更新时间:2023-11-30 15:14:05 26 4
gpt4 key购买 nike

我正在尝试在 POSIX 正则表达式的帮助下制作一个简单的 FTP url 解析器。我正在使用 ERE(扩展正则表达式)。我想出了两个正则表达式(一个用于用户输入用户名和密码,另一个用于匿名):

/* ftp syntax */
ftp://[<user>:<password>@]<host>/<url-path>


/* The regular expression pattern (might be changed) */
const char* pattern = "ftp://(([a-z0-9]+):([a-z0-9]+)@)*([\\.a-z0-9]+)/([\\./a-z0-9]+)$";

/* The anonymous one */
const char* patternAnon = "ftp://([\\.a-z0-9]+)/([\\./a-z0-9]+)$";

我的主要困难是尝试将它们两者组合成一个正则表达式。谢谢。

最佳答案

此正则表达式将匹配您指定的两种模式:

ftp://([a-z0-9]+:[a-z0-9]+@)?([\\.a-z0-9]+)/([\\./a-z0-9]+)$

不过,我还应该提到,您的模式(以及这个模式)也匹配许多无效的网址格式,并错过了一些有效的格式。我将把这个留给您,但至少您可以在我的示例中看到如何使 user:pass@ 部分成为可选。

关于c - C POSIX 中的 FTP url 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34189307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com