Intersección de dos listas
La intersección de dos listas reúne los elementos presentes en ambas entradas. Esta herramienta realiza la comparación y devuelve cada valor compartido una sola vez, según el orden de su primera aparición en la primera lista.
Ejecutar — gratis
Resulta útil para contrastar palabras clave, conciliar etiquetas, revisar listas permitidas o hallar el subconjunto común de dos fuentes de datos. La comparación es exacta por defecto, con una opción que ignora mayúsculas sin alterar la grafía devuelta.
Prepare dos listas para una comparación útil
Coloque los valores de referencia en la primera lista y los que desea contrastar en la segunda. Cada elemento debe ser texto. La operación no elimina espacios, modifica signos ni intenta deducir equivalencias. Por ello, conviene normalizar previamente las diferencias accidentales. La primera lista determina el orden y la grafía de la salida. Si un valor compartido se repite, aparece una sola vez en la posición de su primera ocurrencia. Así se obtiene una intersección de conjuntos estable y apropiada para procesos posteriores. Ambas listas necesitan al menos un elemento, aunque el resultado puede quedar vacío cuando no existe coincidencia.
Elija una comparación exacta o sin distinguir mayúsculas
La comparación exacta es la opción predeterminada porque algunos identificadores distinguen mayúsculas. Con esa regla, «API» y «api» son distintos. Active ignore_case cuando la capitalización sea irrelevante, por ejemplo, en palabras clave o etiquetas introducidas por personas. La opción solo transforma las claves internas de búsqueda y conserva en la salida la grafía de la primera lista. Los duplicados siguen la misma regla y solo generan una coincidencia. Se comparan cadenas completas: «correo» no coincide con «correo electrónico». Si necesita eliminar acentos, unificar espacios o reconocer sinónimos, normalice los datos antes de usar la herramienta.
Utilice la intersección en flujos de datos
La respuesta incluye el array de intersección, su número de elementos únicos, el tamaño original de cada lista y el modo de comparación. Un equipo de búsquedas puede contrastar palabras clave previstas con términos ya cubiertos; una tienda puede cruzar etiquetas de productos con una lista permitida; y una canalización puede comparar columnas de dos exportaciones. El cálculo es determinista: las mismas entradas siempre producen el mismo resultado ordenado. No intervienen la red, modelos, elecciones aleatorias ni la hora actual. La API cuesta $0.002 por solicitud y el ejecutor del navegador utiliza la misma lógica pura.
Qué puede hacer con ella
Comparar exportaciones de palabras clave
Encuentre términos compartidos por dos herramientas de análisis o listas de campañas antes de consolidar el trabajo SEO.
Conciliar etiquetas
Identifique las etiquetas admitidas tanto por un sistema de contenidos como por una plataforma de destino.
Filtrar con una lista permitida
Conserve solo las etiquetas o los identificadores solicitados que también figuren en una lista de texto aprobada.
Preguntas frecuentes
¿Qué devuelve la operación?
Devuelve una vez cada cadena presente en ambas listas, ordenada y escrita según su primera aparición en list_a.
¿Se incluyen los duplicados?
No. El resultado es una intersección de conjuntos, por lo que cada valor coincidente aparece una sola vez.
¿La comparación distingue mayúsculas?
Sí, de forma predeterminada. Establezca ignore_case en true cuando la capitalización no deba afectar a las coincidencias.
¿Se eliminan espacios o signos?
No. Los valores se comparan tal como se reciben, salvo la opción de ignorar mayúsculas. Normalice antes los datos si es necesario.
¿Qué ocurre si no hay coincidencias?
La solicitud finaliza correctamente con un array de intersección vacío y un recuento de cero.
¿Cuánto cuesta una solicitud de API?
Cada solicitud de API cuesta $0.002.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/str/list-intersection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"list_a":["analytics","email","seo","automation"],"list_b":["seo","content","analytics"]}'const res = await fetch("https://api.kit.forhosting.com/str/list-intersection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"list_a": [
"analytics",
"email",
"seo",
"automation"
],
"list_b": [
"seo",
"content",
"analytics"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/list-intersection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"list_a": [
"analytics",
"email",
"seo",
"automation"
],
"list_b": [
"seo",
"content",
"analytics"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/list-intersection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"list_a":["analytics","email","seo","automation"],"list_b":["seo","content","analytics"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"list_a":["analytics","email","seo","automation"],"list_b":["seo","content","analytics"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/list-intersection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"list_a": [
"analytics",
"email",
"seo",
"automation"
],
"list_b": [
"seo",
"content",
"analytics"
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.list_intersection",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_items_per_list | 10000 |
max_item_chars | 4096 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |