草庐IT

REGEX_EXTRACT

全部标签

ios - 在 Swift 中使用 Regex 进行简单搜索时,如何避免由于搜索字符串中的特殊字符而导致的错误?

我正在使用Regex在textView中搜索单词。我实现了一个textField和两个开关作为选项(全字和匹配大小写)。当您在搜索字段中输入一个普通单词时,一切正常,但当我输入特殊字符(如\或*)时出现错误。我得到的错误是这样的:ErrorDomain=NSCocoaErrorDomainCode=2048"Thevalue“*”isinvalid."UserInfo={NSInvalidValue=*}有没有办法避免这个问题,让代码像处理纯文本一样处理所有文本?因为我也想搜索特殊字符,所以我不想禁止输入它们。一开始我虽然在执行搜索之前以编程方式向所有特殊字符添加转义反斜杠,但也许有一

ios - 场景套件 : Extract data from SCNGeometryElement

我正在使用SceneKit,但遇到一个问题:如何从SCNGeometryElement对象中提取数据?我使用这种方法:-(void)geometryElements:(SCNNode*)node{for(intindexElement=0;indexElement结果不好:2015-04-1015:10:25.183IKTest[1234:244778]currentelement:14539995-1068223968-3792867782015-04-1015:10:25.183IKTest[1234:244778]currentelement:14737374-106822396

regex - 检查字符串是否包含 1 个数字、1 个字母且长度在 5-15 个字符之间

我正在使用以下扩展来确保一个字符串至少有1个数字、1个字母和5-15个字符的长度,我觉得它可以更有效率。有什么建议吗?funccheckPassword(password:String)->bool{ifpassword.characters.count>15||password.characters.count 最佳答案 使用正则表达式正则表达式是一种方法,但如果使用它,我们可能会将您的规范组合到一个正则表达式搜索中,利用以下问答中的积极前瞻断言技术:Regextovalidatepasswordstrength在这里,使用正则表

regex - Swift 2 Regex 意外行为

我正在尝试从HTML字符串中提取信息,但得到了意想不到的结果。我使用的代码如下:lethtml:NSString?="03Oct20158,852.611,383.68Text04Oct20152,577.14282.49Text"letrowPattern="\\s*"letrowRegex=try!NSRegularExpression(pattern:rowPattern,options:[])letrowMatches=rowRegex.matchesInString(String(html),options:[],range:NSMakeRange(0,html!.lengt

regex - 正则表达式或条件不适用于 Swift 但适用于在线调试器

我正在尝试检查字符串是否包含一个额外的字符或一位数字。但出于某种原因,它在Swift中不起作用,但它适用于在线调试器/编辑器。这是我的正则表达式:^(?=.*[a-z])(?=.*[$@$#!%*?&])|(?=.*[0-9]).{6,}据我了解:^-thisisstartanchor(?=.*[a-z])-stringhasonecharacter(?=.*[$@$#!%*?&])-stringhasonespecialcharacter(?=.*[0-9])-stringhasonedigit{6,}-stringlengthisatleast6并且在正则表达式验证中,常规|符号表

regex - 如何在Swift中提取 "---"之间的多行字符串

我想从字符串中提取YAMLblock。此block不是典型的YAML,并且以---开始和结束。我想要这些标记之间没有标记本身的文本。下面是一个测试字符串(swift4):lettestMe="""---#Metadatatitle:humauthor:jecatatuemail:jecatatu@gmail.com---Thisismoretextoutsidetheyamlblock"""在纯正则表达式中,模式将是---([\s\S]*?)---。我最初的想法是使用VerbalExpressions,因为我是初学者。,但我无法使用VerbalExpression重现此模式。我得到的最

ios - 用户名 RegEx Swift

用户名正则表达式应该是至少8个字符长的任何字符串。此字符串中可以有@符号、句点、数字或没有。我在下面放了一些有效和无效的测试用例。我怎样才能做到这一点?有效:user@user.comadminuser1user.user@user.com无效:user@user.user.com1adminuser1目前我有:letusernameRegex="\\A\\w{6,30}\\z" 最佳答案 您似乎过度限制了用户名中使用的电子邮件地址。一个基本的电子邮件模式是\S+@\S+\.\S+匹配类似电子邮件的内容,但您似乎不想让用户名以数字开

regex - 用于提取括号之间单词的 Swift Regex

你好,我想提取()之间的文本。例如:(sometext)someothertext->sometext(some)someothertext->some(12345)someothertext->12345括号之间的字符串的最大长度应为10个字符。(TooLongStri)->nothingmatchedbecause11characters我目前拥有的是:letregex=try!NSRegularExpression(pattern:"\\(\\w+\\)",options:[])regex.enumerateMatchesInString(text,options:[],rang

regex - 快速忽略转义的双引号字符

我正在尝试使用NSPredicate和正则表达式验证电话号码。唯一的问题是在设置正则表达式时,Swift认为由于反斜杠,我正试图转义它的一部分。我该如何解决这个问题?我的代码如下:letphoneRegEx="^((\(?0\d{4}\)?\s?\d{3}\s?\d{3})|(\(?0\d{3}\)?\s?\d{3}\s?\d{4})|(\(?0\d{2}\)?\s?\d{4}\s?\d{4}))(\s?\#(\d{4}|\d{3}))?$" 最佳答案 在Swift常规字符串文字中,您需要对斜杠进行两次转义以定义文字反斜杠:letp

regex - 电话号码正则表达式不适用于 swift

这个问题在这里已经有了答案:Howtovalidatephonenumbersusingregex(42个回答)关闭3年前。我正在开发一个可处理电话号码的应用程序,但我在使用正则表达式查找字符串中的电话号码时遇到问题。我的应用会查看联系人的电话号码,它可以是:(带破折号“-”)XXXX-XXXXXXXXX-XXXXX(YY)XXXX-XXXX(YY)XXXXX-XXXX+ZZ(YY)XXXX-XXXX+ZZ(YY)XXXXX-XXXX(无破折号)XXXXXXXXXXXXXXXXX(YY)XXXXXXXX(YY)XXXXXXXXX+ZZ(YY)XXXXXXXX+ZZ(YY)XXXXXXX