gpt4 book ai didi

cocoa - 如何提取与模式匹配的子字符串?

转载 作者:行者123 更新时间:2023-12-03 17:36:02 24 4
gpt4 key购买 nike

我必须解析大型 html 文本文件并提取与特定模式匹配的子字符串。例如:

<span id='report-9429'>Report for May 2009</span>
A lot of code and text.
<span id='report-10522'>Report for Apr 2009</span>
A lot of code and text.
<span id='report-15212'>Report for Apr 2009</span>

其中 9429、10522 和 15212 是我必须作为子字符串数组获取的部分。该文件包含许多这些内容,我需要获取所有这些内容。

Cocoa 中是否有某种 RegExp 功能?这样的正则表达式会是什么样子?

最佳答案

您可以使用NSRegularExpression (尽管显然它不适用于 Snow Leo)或 RegexKit .

您的正则表达式可能如下所示:

<span id='report-(\d+)'>Report for \w+ \d+</span>

对于 NSRegularExpression,代码可能如下所示:

NSString *pattern = @"<span id='report-(\d+)'>Report for \w+ \d+</span>";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:pattern
options:0
error:nil];
[regex enumerateMatchesInString:string
options:0
range:NSMakeRange(0, [string length])
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop) {
NSString *reportId = [string substringWithRange:[result rangeAtIndex:1]];
// Do something with reportId
}];

关于cocoa - 如何提取与模式匹配的子字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7137572/

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