我正在尝试为SwiftLint编写自定义规则 . 按照自述文件中的说明,我已将以下内容添加到 .swiftlint.yml
:
custom_rules:
multi_clause_guard:
regex: 'guard .*,'
但是,这个正则表达式不匹配我的项目中的任何行,尽管它有足够的行匹配,例如:
guard let x = Int(s), let y = Int(t) else { return }
我已经尝试了正则表达式的各种其他值,它一直有效,直到你引入量词 .
-
✅
'guard .,'
将匹配guard a,
行 -
✅
'guard ..,'
将匹配guard _a,
行 -
❌
'guard .*,'
与guard a,
行不匹配 -
❌
'guard .+,'
与该行不匹配guard a,
有没有办法在SwiftLint自定义规则中使用 *
和 +
?
1 回答
似乎量词可以应用于您明确定义的字符集 . 在这种情况下,我用
[\h\S]
(包括水平空白字符和任何其他不是空白字符的字符)替换.
就足够了 .如果有人知道如何使量词使用
.
,我仍然有兴趣知道!