ios – 使用大写符号在字符串swift中获取URL的正则表达式

前端之家收集整理的这篇文章主要介绍了ios – 使用大写符号在字符串swift中获取URL的正则表达式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我尝试在文本中获取URL.所以,在此之前,我使用了这样一个表达式:
let re = NSRegularExpression(pattern: "https?:\\/.*",options: nil,error: nil)!

但是当用户输入带有大写符号的URL时(例如Http://Google.com,它与它不匹配)我遇到了问题.

我试过了:

let re = NSRegularExpression(pattern: "(h|H)(t|T)(t|T)(p|P)s?:\\/.*",error: nil)!

但什么都没发生.

解决方法

您可以使用正则表达式中的i内联标志关闭区分大小写,有关可用正则表达式功能的详细信息,请参阅 Foundation Framework Reference.

(?ismwx-ismwx)
Flag settings. Change the flag settings. Changes apply to the portion of the pattern following the setting. For example,(?i) changes to a case insensitive match.The flags are defined in Flag Options.

对于读者:

匹配较大文本中的URL已经是solved problem,但对于这种情况,simple regex就像

(?i)https?://(?:www\\.)?\\S+(?:/|\\b)

将要做的就是OP要求只匹配以http或https或HTTPs等开头的URL.

原文链接:https://www.f2er.com/iOS/331698.html

猜你在找的iOS相关文章