Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Create your online store today with Shopify

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Disclosure: My content contains affiliate links.

43,181 questions

56,073 answers

573 users

How to find the starting index of all occurrences of a word in a string in TypeScript

1 Answer

0 votes
/*
    Find all starting indices of a word inside a larger text.
    This function uses String.indexOf in a loop. The method is efficient
    and implemented in optimized native code inside JavaScript engines.
*/
function findAllOccurrences(text: string, word: string): number[] {
    const indices: number[] = [];

    // Searching for an empty word is meaningless
    if (word.length === 0) {
        return indices;
    }

    let index: number = text.indexOf(word); // First occurrence

    while (index !== -1) {
        indices.push(index);                // Store the index

        /*
            Search again starting one character after the previous match.
            This allows detection of overlapping matches.
        */
        index = text.indexOf(word, index + 1);
    }

    return indices;
}

// Example usage
const text: string =
    "the quick brown fox jumps over the lazy dog. the fox is clever.";
const word: string = "the";

console.log("Text:", text);
console.log(`Word: "${word}"\n`);
console.log("Occurrences at indices:");

for (const idx of findAllOccurrences(text, word)) {
    const indexValue: number = idx; 
    console.log(indexValue);
}


/*
run:

Text: the quick brown fox jumps over the lazy dog. the fox is clever.
Word: "the"

Occurrences at indices:
0
31
45

*/

 



answered Aug 30 by avibootz

Related questions

...