草庐IT

NSRegularExpression

全部标签

regex - NSRegularExpression 返回无效范围

当我在Playground中运行以下代码时,我得到了一个无效的范围:importCocoavarerror:NSError?varcaptureGroups:[String]=[]varinput="http://www.google.com"varpattern="(https?|ftp|file|gopher|mailto|news|nntp|telnet|wais)://[a-zA-Z0-9_@]+([.:][a-zA-Z0-9_@]+)*/?[a-zA-Z0-9_?,%#~&/\\-]+([:.][a-zA-Z0-9_?,%#~&/\\-]+)*"varinternalExpr

ios - 什么是正确的长度 : argument to provide to NSRange for NSRegularExpression using a (Swift) String?

我对如何在Swift中使用NSRegularExpression类感到困惑,尤其是NSRange的:length参数。一些教程说NSRegularExpression应该只应用于NSString实例,而其他人则说只要你提供utf8.count或utf16就可以将它应用于(Swift)字符串实例.count到:NSRange的length参数:varstr:String="#tweak#wow#gaming"ifletregex=try?NSRegularExpression(pattern:"#[a-z0-9]+",options:.caseInsensitive){regex.mat

objective-c - NSRegularExpression 是否支持部分不区分大小写?

如标题所述,我想知道Objective-c或Swift中的NSRegularExpression是否支持部分不区分大小写的搜索?也就是说,模式会识别(?ismx)吗?如果不是,是否有导致这种无能的简短原因?非常感谢您的解释。 最佳答案 来自NSRegularExpressionClassReference:Table2RegularExpressionOperators...(?ismwx-ismwx:...)Flagsettings.Evaluatetheparenthesizedexpressionwiththespecifie

ios - NSRegularExpression 找不到捕获组匹配项

我正在尝试使用一种正则表达式模式解析字符串。这是模式:(\")(.+)(\")\s*(\{)这里是要解析的文本:"base"{我想找到这4个捕获组:1."2.base3."4.{我正在使用以下代码trycatch这些组classfuncmatchesInCapturingGroups(text:String,pattern:String)->[String]{varresults=[String]()lettextRange=NSMakeRange(0,count(text))varindex=0ifletmatches=regexp(pattern)?.matchesInString

swift - 无法将 0 传递给 NSRegularExpression 选项?

我收到错误:找不到接受所提供参数的“init”的重载当我输入时:varexpr=NSRegularExpression(pattern:"test",options:0,error:nil)如果我传递一个NSRegularExpressionOptions成员,错误就会消失...如何不给NSRegularExpression的初始化传递任何选项? 最佳答案 在Swift2中不接受nil,错误不再是输出参数(抛出),所以变成:varexpr=tryNSRegularExpression(pattern:"test",options:[

objective-c - 捕获组在 NSRegularExpression 中不起作用

为什么这段代码只吐出整个正则表达式匹配而不是捕获组?输入@"AlongstringcontainingName:Anamehereamongstotherthings"预期输出Anamehere实际输出Name:Anamehere代码NSString*htmlString=@"AlongstringcontainingName:Anamehereamongstotherthings";NSRegularExpression*nameExpression=[NSRegularExpressionregularExpressionWithPattern:@"Name:.*\">(.*)"o

objective-c - 如何在Objective C(NSRegularExpression)中编写正则表达式?

当我在PHP中测试它时,我有这个正则表达式工作,但它在ObjectiveC中不起作用:(?:www\.)?((?!-)[a-zA-Z0-9-]{2,63}(?我尝试转义转义字符,但这也无济于事。我应该转义任何其他角色吗?这是我在ObjectiveC中的代码:NSMutableString*searchedString=[NSMutableStringstringWithString:@"domain-name.tld.tld2"];NSError*error=nil;NSRegularExpression*regex=[NSRegularExpressionregularExpress

objective-c - Objective-C Cocoa 应用程序中的正则表达式

最初的谷歌搜索表明在Objective-CCocoa应用程序中没有内置的方法来执行正则表达式。那么四个问题:真的是这样吗?你在开玩笑吗?好的,那你有什么好的开源库推荐吗?有哪些方法可以在不导入库的情况下获得足够的距离,也许是使用NSScanner类? 最佳答案 我注意到,从iOS4.0开始,Apple提供了NSRegularExpressionclass.此外,从10.7开始,该类可用underOSX. 关于objective-c-Objective-CCocoa应用程序中的正则表达式,

objective-c - Objective-C Cocoa 应用程序中的正则表达式

最初的谷歌搜索表明在Objective-CCocoa应用程序中没有内置的方法来执行正则表达式。那么四个问题:真的是这样吗?你在开玩笑吗?好的,那你有什么好的开源库推荐吗?有哪些方法可以在不导入库的情况下获得足够的距离,也许是使用NSScanner类? 最佳答案 我注意到,从iOS4.0开始,Apple提供了NSRegularExpressionclass.此外,从10.7开始,该类可用underOSX. 关于objective-c-Objective-CCocoa应用程序中的正则表达式,

关于 iphone:如何使用 NSRegularExpression 提取某些文本?

HowtoextractcertaintextwithNSRegularExpression?我正在尝试从以下代码中提取(80.4):1 提取该文本的表达式是什么样的?谢谢。对于这种特殊情况,正则表达式是相当重量级的。我会这样做:123NSString*originalString;//whichwillcontain"",howeveryouwanttogetitthereNSString*afterColon=[[originalStringcomponentsSeparatedByString:@":"]objectAtIndex:1];floattheValue=[afterColon