La tarea es obtener la enésima aparición de una substring en una string con la ayuda de JavaScript.
Enfoque 1:
- Primero, divida la string en substrings usando el método split() pasando también el índice.
- Una vez más, únase a las substrings en la substring pasada usando el método join() .
- Devuelve el índice de la enésima aparición de la string.
Ejemplo: en este ejemplo, se utilizan los métodos split() y join() para obtener el índice de la substring.
<!DOCTYPE HTML> <html> <head> <title> How to get nth occurrence of a string in JavaScript ? </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 19px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color: green; font-size: 24px; font-weight: bold;"> </p> <script> var el_up = document.getElementById("GFG_UP"); var el_down = document.getElementById("GFG_DOWN"); var string = "Geeks gfg Geeks Geek Geeks gfg"; var searchString = 'Geeks'; var occurrence = 3; el_up.innerHTML = "Click on the button to get the index of " + occurrence + "rd occurrence of a '" + searchString + "' in a <br>'" + string + "'."; function getPos(str, subStr, i) { return str.split(subStr, i).join(subStr).length; } function GFG_Fun() { el_down.innerHTML = getPos(string, searchString, occurrence); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Enfoque 2: revise cada substring una por una y devuelva el índice de la última substring. Este enfoque utiliza el método indexOf() para devolver el índice de la enésima aparición de la string.
Ejemplo:
<!DOCTYPE HTML> <html> <head> <title> How to get nth occurrence of a string in JavaScript ? </title> </head> <body style = "text-align:center;" id = "body"> <h1 style = "color:green;" > GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 19px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color: green; font-size: 24px; font-weight: bold;"> </p> <script> var el_up = document.getElementById("GFG_UP"); var el_down = document.getElementById("GFG_DOWN"); var string = "Geeks gfg Geeks Geek Geeks gfg"; var searchString = 'Geeks'; var occurrence = 3; el_up.innerHTML = "Click on the button to get the index of " + occurrence + "rd occurrence of a '" + searchString + "' in a <br>'" + string + "'."; function getIndex(str, substr, ind) { var Len = str.length, i = -1; while(ind-- && i++ < Len) { i = str.indexOf(substr, i); if (i < 0) break; } return i; } function GFG_Fun() { el_down.innerHTML = getIndex(string, searchString, occurrence); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Publicación traducida automáticamente
Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA