RegExp 匹配未按指定大小写拼写的单词(如 OK,但仅匹配 oK、Ok 或 ok

问题描述 投票:0回答:1

我需要匹配不是以“标准”方式编写的单词/缩写,无论它是什么。

应该与 OK 类似地以这种方式匹配:

在此处匹配 -> 确定 此处匹配 -> 确定 此处匹配 -> 确定 此处不匹配 -> 好的

我有很多单词应该以这种方式检查,如果它比几个字符长,则添加检查不同情况的所有排列非常大,非常快。

因此,寻找更优雅的解决方案,而不是为所有排列或常见的错误大小写制作正则表达式,如下所示:

(?-i) 萨斯 (?-i) 原子吸收光谱法 (?-i) SAAS ...

而不是仅仅匹配大小写与“SaaS”不同的单词,我想找到(有点拼写错误)非标准大小写

regex delphi pascal pcre
1个回答
0
投票

这不是仅靠正则表达式就能解决的问题。您应该进行第二次检查,看看它是否与您不想要的东西匹配。

// pseudocode
let pattern = "(SaaS)"

let match = regex.match(pattern, str, caseSensitive=false)

if (match && match.group(1) != "SaaS") {
    // the pattern matched a different way of spelling
}
© www.soinside.com 2019 - 2024. All rights reserved.