diff --git a/WebsiteGenerator/Extensions/String+Extensions.swift b/WebsiteGenerator/Extensions/String+Extensions.swift index f5fba0c..54d59e9 100644 --- a/WebsiteGenerator/Extensions/String+Extensions.swift +++ b/WebsiteGenerator/Extensions/String+Extensions.swift @@ -36,4 +36,20 @@ extension String { let parts = components(separatedBy: separator) return parts.dropLast().joined(separator: separator) + content + separator + parts.last! } + + func dropAfterFirst(_ separator: T) -> String where T: StringProtocol { + components(separatedBy: separator).first! + } + + func between(_ start: String, and end: String) -> String { + dropBeforeFirst(start).dropAfterFirst(end) + } +} + +extension Substring { + + func between(_ start: String, and end: String) -> String { + components(separatedBy: start).last! + .components(separatedBy: end).first! + } }