gpt4 book ai didi

regex - ios NSRegularExpression 麻烦

转载 作者:行者123 更新时间:2023-12-03 16:54:50 25 4
gpt4 key购买 nike

我正在尝试在 xcode 中执行基本的正则表达式,但它不配合。

NSString *urlString = @"http://www.youtube.com/v/3uyaO745g0s?fs=1&hl=en_US";

NSError *error = nil;
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"/.*?v=(.*)&.*/" options:NSRegularExpressionCaseInsensitive error:&error];
NSTextCheckingResult *fmis = [regex firstMatchInString:urlString options:0 range:NSMakeRange(0, [urlString length])];

if(fmis) {
NSRange match = [fmis range];
NSLog(@"%i", match.location);
}

本质上,我只是想从 urlString 中提取 3uyaO745g0s 。我认为正则表达式是最好的方法?感谢您查看我的问题。

** 编辑 **

有时,网址将如下所示:http://www.youtube.com/watch?v=3uya0746g0s,我也必须从中捕获视频。

最佳答案

我认为创建一个 NSURL 对象并让它为您发挥作用要容易得多:

NSString *urlString = @"http://www.youtube.com/v/3uyaO745g0s?fs=1&hl=en_US";
NSURL *url = [NSURL URLWithString:urlString];

// Since you're targeting the last component of the url
NSString *myMatch = [url lastPathComponent]; //=> 3uyaO745g0s

您可以找到有关如何访问 NSURL 对象各个部分的更多信息 here

关于regex - ios NSRegularExpression 麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13407820/

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