ios - 使用正则表达式提取两个标记之间的文本
<p><p>简单的正则表达式问题。我有以下格式的字符串:</p>
<pre><code>Some text with multi line.
Another text with multi line.
Third text with multi line.
</code></pre>
<p>提取<code></code>和<code></code>之间文本的正则表达式是什么?</p>
<p>我正在使用这段代码,但我只得到了第一个匹配项。</p>
<pre><code>NSString *path = [ pathForResource:@"File" ofType:@"txt"];
NSString *mainText = ;
NSError *error = NULL;
NSRange range = NSMakeRange(0, mainText.length);
NSString *pattern = )"];
NSRegularExpression *regex = ;
NSRange rangeOfFirstMatch = ;
if (!NSEqualRanges(rangeOfFirstMatch, NSMakeRange(NSNotFound, 0))) {
NSString *substringForFirstMatch = ;
NSLog(@"sub: %@", substringForFirstMatch);
}
</code></pre>
<p>我怎样才能在 NSArray 中找到每个匹配项的文本?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>您可以使用 <code>matchesInString:options:range:</code>,它将匹配数组作为 NSTextCheckingResults 返回:</p>
<pre><code> NSString *pattern = )(.*?)(?=\\)"];
NSUInteger options = NSRegularExpressionCaseInsensitive | NSRegularExpressionDotMatchesLineSeparators;
NSRegularExpression *regex = ;
for (NSTextCheckingResult* result in [regex matchesInString:INPUT_STRING
options:0
range:NSMakeRange(0, )])
{
// further code
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - 使用正则表达式提取两个标记之间的文本,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/29050504/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/29050504/
</a>
</p>
页:
[1]