0

我目前有以下正则表达式:

static inline NSRegularExpression * AuthorRegularExpression() {
    if (!__authorRegularExpression) {
        __authorRegularExpression = [[NSRegularExpression alloc] initWithPattern:@"-\\s*(.)*$" options:NSRegularExpressionCaseInsensitive error:nil];
    }

    return __authorRegularExpression;
}

正如您在模式中看到的,它检测到一个破折号 (-),后跟一些字符串。但是现在我已经将破折号的格式更改为 em-dash。所以字符串如下所示:

  NSString *dashAuthor = [NSString stringWithFormat:@"%C %@", 0x2014, self.theme.quoteAuthor];

我现在如何更改正则表达式以反映这一点,以便它可以找到带有尾随 em-dash 的作者。

4

1 回答 1

6

您可以将破折​​号与其 unicode 值 ( \u2014) 或字符名称匹配,如下所示\N{EM DASH}

于 2013-05-12T02:33:41.987 回答