Hace días hice un ejemplo de generar dígito verificador de un número dado en Swift y requería algo para rellenar los números para que quedaran de una longitud específica, así que aquí está una función para hacerlo de manera sencilla
import UIKit//MARK: padding izquierdo
extension String {
func left(total:Int, cadena: String) -> String {
let pad = total - self.count;
return pad < 1 ? self : "".padding(toLength: pad, withPad: cadena, startingAt: 0)+self
}
}
//ejemplo, la cadena a rellenar es con "0"'s
var numeroString = "14"
var caracteres = 5 // el número de caracteres
var numeroStringRelleno = numeroString.left(total: caracteres, cadena: "0")
print("Numero original: (numeroString), con relleno: (numeroStringRelleno)")
Con eso entonces usamos cadena.left(total: Int, cadena: String) y tendremos el relleno a la izquierda de la cadena, en mi caso fue con ceros pero puede usarse con cualquier letra.
https://panchito-kardashian.tar.mx/media/2017/11/paddingLeftSwift.png