嗨,我正在使用以下URL正则表达式来查找网站网址。
NSString *urlRegEx =@"(http|https)://((\w)*|([0-9]*)|([-|_])*)+([\.|/]((\w)*|([0-9]*)|([-|_])*))+";
但是我也需要找到以下URL。
例子:
www.gmail.com
gmail.com
https://stackoverflow.com/questions/ask
喜欢这个。
也许尝试在(http|https)://
之后使用另一个"or"|
:
(http|https)://|((\w)*|([0-9]*)|([-|_])*)+([\.|/]((\w)*|([0-9]*)|([-|_])*))+
这应该可以找到您展示的所有示例。
您可以将第一部分设为可选:
((http|https)://)?
但是,您的表达式中也有一些错误,因此它匹配得比应有的多。你已经使用了|
并在[ ]
内部逃脱了.
,所做的只是在集合中添加|
和。修复并简化它给出了:
(https?://)?(w|[-_0-9])+([./](w|[-_0-9])+)+
呵呵