You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Swift Regex Builder构建匹配2个及以上空格或制表符的正则?

Swift Regex Builder 实现匹配2个及以上空格或制表符

对应你给出的传统正则let twoOrMoreSpacesOrTab = /\s{2,}|\t/,正确的Swift Regex Builder写法如下:

let twoOrMoreSpacesOrTab = Regex {
    ChoiceOf {
        Repeat(count: 2...) {
            CharacterClass.whitespace
        }
        "\t"
    }
}

代码说明

  • Repeat(count: 2...) { CharacterClass.whitespace } 等价于传统正则的\s{2,},用于匹配连续2个及以上的空白字符(包含空格、制表符等)。
  • "\t" 直接匹配单个制表符,对应正则里的\t。

你原有代码的问题

你之前写的OneOrMore(" ")会匹配一个或多个连续的双空格组合(比如" "会被拆成两组" "匹配),而非一次性匹配连续2个及以上的空格,因此不符合需求。

如果你的实际需求是仅匹配2个及以上的空格,或者任意数量(至少1个)的制表符,可以调整为:

let twoOrMoreSpacesOrTabs = Regex {
    ChoiceOf {
        Repeat(count: 2...) { " " }
        OneOrMore("\t")
    }
}

内容的提问来源于stack exchange,提问作者Godfather

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 05:31:38