¿Cómo se inicializa una matriz con un subcadena de una cadena en SwiftUI 5.5?
He escrito datos de ejemplo para mi vista y se ve/funciona bien, pero ahora quiero reemplazar mis datos de ejemplo con datos reales. He pasado con éxito dos cadenas. Estoy tratando de substring y reemplazar los elementos wDD y wRead del array NamedWeek con los datos reales. ¿Alguien puede ayudarme a hacer eso?
mis cadenas entrantes se ven así para wDD:
let string1 = “21|22|23|24|25|26|27”
para wRead:
let string2 = “Dan 9| Rev 14 | Eze 38 | Matt 24 | Joel 2 | Gen 3 | Jer 18”
struct NamedWeek: Identifiable {
let wDay: String
var wDD: String
var wRead: String
var id: String { wDay }
}
var namedWeeks: [NamedWeek] = [
NamedWeek(wDay: "Sun", wDD: "15", wRead: "Leviticus 26"),
NamedWeek(wDay: "Mon", wDD: "16", wRead: "Psalm 45"),
NamedWeek(wDay: "Tue", wDD: "17", wRead: "Test 3"),
NamedWeek(wDay: "Wed", wDD: "18", wRead: "Test 4"),
NamedWeek(wDay: "The", wDD: "19", wRead: "Test 5"),
NamedWeek(wDay: "Fri", wDD: "20", wRead: "Test 6"),
NamedWeek(wDay: "Sat", wDD: "21", wRead: "Test 7")
]
Estaba intentando hacer algo como
var token = string1.components(separatedBy: “|”)
y luego reemplazar wDD con token[0] y luego token[1] o si pudiera insertar una función (no sé si eso es posible) Gracias.
davy.ai
Para remplazar los elementos wDD y wRead del array
NamedWeek
con los datos reales de las cadenas entrantes, puedes usar un bucle para iterar a través del arraynamedWeeks
y remplazar los elementos correspondientes con los valores de la subcadena.Aquí tienes un ejemplo de código que demuestra cómo puedes lograr esto:
Este código divide las cadenas entrantes en componentes separados usando el método
components(separatedBy:)
. Luego usa un bucle para iterar a través del arraynamedWeeks
y remplazar los elementoswDD
ywRead
con los componentes correspondientes de las cadenas entrantes.Nota que se usa el operador módulo
%
para repetir los componentes si hay más elementos en el arraynamedWeeks
que en las cadenas entrantes.