首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

无法在Swift中获取匹配"not containing“的正则表达式

在Swift中,无法直接使用正则表达式来获取不包含特定字符串的匹配项。Swift标准库中没有提供内置的正则表达式功能。但是,你可以使用NSRegularExpression类来实现这个功能。

下面是一个示例代码,演示如何在Swift中使用NSRegularExpression来获取不包含特定字符串的匹配项:

代码语言:txt
复制
import Foundation

func getMatchesNotContaining(string: String, pattern: String) -> [String] {
    do {
        let regex = try NSRegularExpression(pattern: pattern, options: [])
        let range = NSRange(location: 0, length: string.utf16.count)
        let matches = regex.matches(in: string, options: [], range: range)
        
        var results: [String] = []
        for match in matches {
            let matchRange = match.range
            if matchRange.location == NSNotFound {
                let substring = (string as NSString).substring(with: matchRange)
                results.append(substring)
            }
        }
        
        return results
    } catch {
        print("Invalid regular expression: \(error.localizedDescription)")
        return []
    }
}

let inputString = "This is a sample string containing some text."
let pattern = "not containing"

let matches = getMatchesNotContaining(string: inputString, pattern: pattern)
print(matches)

这段代码中,我们定义了一个名为getMatchesNotContaining的函数,它接受一个字符串和一个正则表达式模式作为参数。函数使用NSRegularExpression类来创建一个正则表达式对象,并在给定的字符串中搜索匹配项。然后,我们遍历所有匹配项,将不包含特定字符串的匹配项添加到结果数组中。

请注意,这只是一个简单的示例,用于演示如何在Swift中使用正则表达式来获取不包含特定字符串的匹配项。在实际应用中,你可能需要根据具体需求进行更复杂的正则表达式模式匹配。

关于腾讯云相关产品和产品介绍链接地址,由于要求不能提及具体的云计算品牌商,我无法提供相关链接。你可以通过访问腾讯云官方网站或进行在线搜索来获取相关信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Swift 解决Debugger无法获取变量值问题

po 变量名 or print 变量名 会出现出现问题地方 warning: Swift error in module 项目名....如图,左侧视图中无法像以往一样随意查看变量数据,右侧报了一堆错,可以看出提示我们项目的桥头文件第三方库MJRefresh导入方式有误。...是的,项目中MJRefresh桥头文件导入方式如下: #import "MJRefresh.h" 如果你是通过Cocoapods来使用OC第三方库,你需要将导入方式改为这种方式: @import...MJRefresh; 以这种方式逐个修改OC第三方导入方式,就可以解决控件台无法获取变量值问题了。...如果是通过Cocoapods来使用Swift第三方库,直接在需要使用地方导入即可 import Swift第三库名称

2.1K30
  • 正则表达式密码强度匹配使用

    一、背景   今天领导让我写几个正则表达式来对密码做强度验证,听到写正则表达式内心是这样感觉(哈哈,三分钟搞定,今天又可以打鱼了)。...二、解决方法   以第三种为例,这个可以分解为如下需求: 存在数字 存在字母 存在半角符号 长度六位及以上 关键是如何同时满足前三个条件,我有限知识里并不知道怎么搞,然后只好求助于万能百度了,最终找了几个小时后发现如下几个关键词...=pattern) :正向预测先行搜索 名字看着高大上,不明所以,看完示例大概明白什么意思,这个表达式匹配从这个表达式起始字符串(我也不知道咋解释),就是假设这样一个表达式abc(?...=[abc])只会对作用于后面的123,这个显然是不匹配后整个就不匹配了,然后关键来了名字里有预测两个字,这两个字表名了这个表达式特性:不占用字符,匹配后如果匹配成功就继续匹配了好像从来不存在这个东西一样...pattern) :反向预测先行搜索 概念和上面一样,但是效果是相反,abc(?[abc]),对于abc123是匹配成功,对于abca匹配失败,如下所示: reg = /abc(?!

    3.9K30

    Swift专题讲解十六——ARCSwift应用

    Swift专题讲解十六——ARCSwift应用 一、引言         ARC(自动引用计数)是Objective-C和Swift中用于解决内存管理问题方案。...在学习Objective-C编程时经常会学习到一个关于ARC例子:一个公用图书馆,每次进入一人就将卡插入,走时候将自己的卡拔出拿走。...Swift也采用同样方式进行内存管理。         注意:Swift只有引用类型有自动引用计数,结构体、枚举这类值类型是没有引用计数。...cls 若引用实例被释放后,其另一个实例引用也将被置为nil,所以weak只能用于optional类型属性,然而在开发还有一种情况,某个类必须保有另一个类示例,这个实例不能为nil,但是这个属性又不能影响其原始实例释放...= MyClassEight() obj7=nil 除了两个类实例间会产生循环引用,闭包,也可能出现循环引用,当某个类包含一个闭包属性,同时这个闭包属性又使用了类实例,则会产生循环引用,示例如下

    1.3K20

    PHP正则表达式及模式匹配

    PHP对于正则处理文本提供了两种方式,一种是PCRE方式(PCRE库是一个实现了与perl 5语法和语义上略有差异(详见下文)正则表达式模式匹配功能函数集....PCRE模式修正符 i (PCRE_CASELESS)  如果设定此修正符,模式字符将同时匹配大小写字母。...如果这个修饰符 没有设置, 当字符串以一个换行符结尾时, 美元符号还会匹配该换行符(但不会匹配之前任何换行符). 如果设置了修饰符m, 这个修饰符被忽略. perl没有与此修饰符等同修饰符....模式任意反斜线后就ingen一个 没有特殊含义字符都会导致一个错误, 以此保留这些字符以保证向后兼容性. 默认 情况下, perl, 反斜线紧跟一个没有特殊含义字符被认为是该字符原文....参考资料: 1、preg_match_all截取body正则表达式 2、PHP正则表达式匹配多行及模式匹配 3、PHP Manual PCRE模式 @import url(http://www.cnblogs.com

    2.9K20

    iOS开发——GCDSwift变脸

    在看文档过程,发现GCD变化跟OC相比简直都要不认识了,赶紧写个文章总结下,顺手复习下GCD死锁概念,死锁总结发布另一篇文章里了。...所以 Swift 3 对它语法进行了彻底改写。...比如最常用一个异步队列读取数据, 然后再返回主线程更新 UI, 这种操作 Swift 语法是这样: DispatchQueue.global().async { DispatchQueue.main.async...获取一个队列 我们使用 DispatchQueue.global() 获取一个系统队列,这样的话获取就是默认 .default 优先级队列了,如果要获取其他优先级队列,就使用 DispatchQueue.global...希望这篇文章能帮你节省查阅文档时间, 闲暇时刻了解一些技术点。

    2.2K20

    正则表达式来了,Excel正则表达式匹配示例

    单元格查找特定字符串时,FIND函数和SEARCH函数非常方便。如何知道单元格是否包含与给定模式匹配信息?显然,可以使用正则表达式。...如何使用正则表达式Excel匹配字符串 当所有要匹配字符串都具有相同模式时,正则表达式是理想解决方案。...匹配一个单元格字符串 要匹配单个单元格字符串,第一个参数引用该单元格,第二个参数包含一个正则表达式。...要匹配不以特定文本结尾字符串,搜索模式包含结尾字符串锚定:^((?!lemons).)*。 用于不区分大小写匹配正则表达式 经典正则表达式,有一种特殊不区分大小写匹配模式(?...=IF(RegExpMatch(A5, A2,), "Yes","No") 图10 如果正则表达式匹配,则计数 由于内置Excel函数不支持正则表达式,因此无法正则表达式直接放入COUNTIF或

    21.2K30

    【说站】Matchjava匹配

    Matchjava匹配 说明 match用于匹配操作,其返回值为boolean类型。通过match,可以简单地验证list是否存在某种要素。...实例 // 验证 list  string 是否有以 a 开头匹配到第一个,即返回 true boolean anyStartsWithA =     stringCollection         ...string 是否都是以 a 开头 boolean allStartsWithA =     stringCollection         .stream()         .allMatch(...是否都不是以 z 开头, boolean noneStartsWithZ =     stringCollection         .stream()         .noneMatch((s)... -> s.startsWith("z"));   System.out.println(noneStartsWithZ);      // true 以上就是Matchjava匹配,希望对大家有所帮助

    1.2K40

    Swift创建可缩放图像视图

    本教程,我们将建立一个可缩放、可平移图像视图来实现这一功能。 计划 他们说,一张图片胜过千言万语--但它不一定要花上一千行代码!对于我们可缩放图像视图,我们要做是让它成为一个可缩放视图。...medium.com/media/afad3… commonInit(),我们将图像视图居中,并设置它高度和宽度,而不是把它固定在父视图上。这样一来,滚动视图就会从图像视图中获得其内容大小。...设置滚动视图 我们需要实际设置我们滚动视图,使其可缩放和可平移。这包括设置最小和最大缩放级别,以及指定用户放大时使用UIView(我们例子,它将是图像视图)。...我们将通过我们添加imageName字符串,并在字符串改变时更新UIImageView来实现。...让我们给我们类添加另一个初始化器,这样我们就可以代码设置图像名称。 medium.com/media/074d4… 就这样了!现在我们可以像这样通过图片名称以编程方式初始化我们视图了。

    5.7K20

    正则表达式:.Net Framework平衡组递归匹配搜索源码函数方法({}匹配)

    https://blog.csdn.net/10km/article/details/52230558 有时候,我们需要用正则表达式来分析一个计算式符号配对情况。...目前并不是所有的正则表达式引擎都具备了递归匹配功能,根据网上一些资料得到信息是目前只有Perl,PHP,GRETA,还有.Net Framework提供了此项功能。...对Perl等还不了解,本文关注是.Net Framework正则表达引擎来实现符号递归匹配.Net Framework这个特性是由《平衡组定义》来实现。...[\n\r\t ]*>部分用于匹配匹配最外层号以及内部所有嵌套,这样,不仅可以适应这样单层号,还可以用于>这种复杂类型泛型方法定义 注意: 关于源码嵌套匹配...{},这个表达其实是有隐含缺陷:如果""字符串包含了不匹配{},这个表达式是无法匹配

    1.4K20

    Python正则表达式及其常用匹配函数用法简介

    匹配成功re.match方法返回一个匹配对象,否则返回None。 我们可以使用group(num)或 groups() 匹配对象函数来获取匹配表达式。.../4 检索和替换/ Python re模块提供了re.sub用于替换字符串匹配项。.../8 正则表达式模式/ 模式字符串使用特殊语法来表示一个正则表达式: 字母和数字表示他们自身。一个正则表达式模式字母和数字匹配同样字符串。...由于正则表达式通常都包含反斜杠,所以你最好使用原始字符串来表示它们。模式元素(如 r'\t',等价于 \\t )匹配相应特殊字符。 下表列出了正则表达式模式语法特殊元素。...我们需要获取(电影名字作者,上映时间)等等都可以用正则表达式来解析。 ? 分析一下,利用正则表达式提取。 ? 可以看到我们要名字一个a里面,而他们被一个div包裹着。

    1.3K20

    Java如何用正则表达式匹配字符串

    背景 今天运营反馈一个问题,自己扫描单词记录看不到,看了下日志显示同步英语不符合要求,限制了符合以下正则表达式句子才会入库: String regex = "^[A-Za-z0-9\s,.!?...:]表示匹配一个英文字母(大写或小写)、数字、空格、逗号、句号、感叹号、问号、或冒号任意一个字符; +表示匹配前面的子表达式一次或多次; $表示匹配字符串结尾。...正题 Java,由于反斜杠字符 \ 正则表达式具有特殊含义,因此使用正则表达式匹配字符串 \ 时,需要使用双反斜杠 \\ 来表示一个反斜杠字符。...这是因为 Java ,反斜杠字符本身也是一个转义字符,因此需要使用两个反斜杠来表示一个反斜杠字符。 当轻描淡写加个 \\ 以为就能解决问题时,一测试发现还是没匹配到。...所有要匹配两个 \\ 需要写四个反斜杠 \\\\ 才可以~ 修改后测试果然通过,下面演示如何使用正则表达式匹配字符串 \: import java.util.regex.Matcher; import

    8710

    深度学习视觉搜索和匹配应用

    在这篇文章,我将介绍一些我们工作,即使用预先训练好网络来遥感数据目标检测任务避免标注大型训练数据集大量繁琐工作。 2019年9月旬,我参加了北欧遥感会议。...视觉搜索以及所需训练数据 深度学习或其他机器学习技术可用于开发识别图像物体鲁棒方法。对于来自飞机航拍图像或高分辨率卫星照片,这将使不同物体类型匹配、计数或分割成为可能。...因此,与哥本哈根市合作,我们朝着一种工具迈进了一步,该工具可以用于匹配所需物体类型,而不需要预先创建训练数据。该工具基于之前一个项目背后技术。...然而,实际,更确切地说,是前M个片段包含船只,之后片段M和片段N之间有一个间隔,其中一些包含船只,而不是所有都包含船只。M之后片段被假设不包含船,以避免误报。...然而,我们例子,我们选择测试一种更简单启发式来匹配船:我们排序从M之前选择了100个随机片段(正样本),N之后选择了100个随机片段(负样本)。

    1.4K10
    领券