我想用NSRegularExpression
创建以下正则表达式:
的 +(,|。| \ n | \ S)
其中任何一个或多个出现:逗号,句号(句点),新行,空格。
我尝试按如下方式创建NSRegularExpression
:
NSRegularExpression* regex = [NSRegularExpression regularExpressionWithPattern:@"+(,|.|\\n|\\s)" options:NSRegularExpressionCaseInsensitive error:&error];
重要的是:
regularExpressionWithPattern:@"+(,|.|\\n|\\s)"
从class reference开始,有关于转义/引用的信息:
角色表达: \
说明:引用以下字符。必须引用被视为文字的字符是*? + [(){} ^ $ | \。 /
所以,我希望将.
视为文字。我尝试了以下内容:
+(,|\.|\\n|\\s)
+(,|\\.|\\n|\\s)
以上所有工作; nil
regex
NSCocoaErrorDomain
NSInvalidValue
和error
{{1}}的{{1}}。{/ p>
有谁能告诉我如何创建我想要的正则表达式?
感谢。
答案 0 :(得分:1)
您可能将量词+
放在错误的位置。在Regex的大多数实现中,量词通过后面的方式应用于组/字符,如下所示:
(,|\\.|\\n|\\s)+