SwiftLint Правило для прагмы
Я пытаюсь реализовать собственное правило swiftlint, чтобы отслеживать, когда перед "// MARK:" меньше двух новых строк. Я не хорош в регулярных выражениях. Вот мое правило:
custom_rules:
pragma_mark:
name: "Wrong pagma mark format"
regex: "([^\n\n]?\/\/ MARK:)"
message: "Please leave two lines before // MARK:"
severity: warning
но это регулярное выражение неверно. что я делаю не так? Может быть, у swiftlint уже есть это правило? Но я не могу найти это
1 ответ
Решение
Вы должны будете использовать отрицательный взгляд позади. Вот отправная точка:
(?<!\n\n)\/\/ MARK:
А вот страница RegExr, которая объясняет, как это работает, и предлагает несколько тестовых случаев.
Возможно, вы захотите сделать этот регистр нечувствительным и быть терпимым к пробелам до и после "MARK".