quiero encontrar una manera de buscar palabras en una cadena y devolverlas en el mismo orden, así que aquí hay un ejemplo que estoy buscando para perro y gato:
let story = "El perro se escapó, el gato no está contento, el gato miró el cielo y vio a un perro "
el resultado debe ser:
return dog cat cat dog observe que el último en la cadena de la historia es "adog", no un "dog", solo queremos devolver el valor cada vez que aparece la combinación dog.
un resumen simple del texto anterior:
cómo devolver una combinación específica de caracteres en una cadena cuando están rodeados por otros caracteres.
Puede usar expresiones regulares , usando el | para separar las cadenas a buscar.
El método
match()recupera el resultado de hacer coincidir una cadena con una expresión regular.
let story = "The dog ran away, The cat is unhappy,cat watched the sky and saw adog" const search = /dog|cat/g; console.log(story.match(search)); // will result in ["dog", "cat", "cat", "dog"]En formato de cadena:
let str = 'a dog see a cat, also cat and adog ..'; let filtered = str.split(' ').filter(x => x.match(/(dog|cat)/g)).join(' '); console.log(filtered.match(/(dog|cat)/g).join(','));En formato de matriz:
let str = 'a dog see a cat, also cat and adog ..'; let filtered = str.split(' ').filter(x => x.match(/(dog|cat)/g)).join(' '); console.log(filtered.match(/(dog|cat)/g));Aquí, ver el primer comentario:
busque y devuelva una cadena con una palabra específica en js