40 lines
672 B
Swift
40 lines
672 B
Swift
//
|
|
// String+RSWeb.swift
|
|
// RSWeb
|
|
//
|
|
// Created by Brent Simmons on 1/13/18.
|
|
// Copyright © 2018 Ranchero Software. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public extension String {
|
|
|
|
/// Escapes special HTML characters.
|
|
///
|
|
/// Escaped characters are `&`, `<`, `>`, `"`, and `'`.
|
|
var escapedHTML: String {
|
|
var escaped = String()
|
|
|
|
for char in self {
|
|
switch char {
|
|
case "&":
|
|
escaped.append("&")
|
|
case "<":
|
|
escaped.append("<")
|
|
case ">":
|
|
escaped.append(">")
|
|
case "\"":
|
|
escaped.append(""")
|
|
case "'":
|
|
escaped.append("'")
|
|
default:
|
|
escaped.append(char)
|
|
}
|
|
}
|
|
|
|
return escaped
|
|
}
|
|
|
|
}
|