Add substring count/indexes

This commit is contained in:
Chalarangelo
2020-12-31 13:58:51 +02:00
parent 17c9cf690b
commit af7c25a9c5
2 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,27 @@
---
title: countSubstrings
tags: string,algorithm,beginner
---
Counts the occurences of a substring in a given string.
- Use `Array.prototype.indexOf()` to look for `searchValue` in `str`.
- Increment a counter if the value is found and update the index, `i`.
- Use a `while` loop that will return as soon as the value returned from `Array.prototype.indexOf()` is `-1`.
```js
const countSubstrings = (str, searchValue) => {
let count = 0,
i = 0;
while (true) {
const r = str.indexOf(searchValue, i);
if (r !== -1) [count, i] = [count + 1, r + 1];
else return count;
}
};
```
```js
countSubstrings('tiktok tok tok tik tok tik', 'tik'); // 3
countSubstrings('tutut tut tut', 'tut'); // 4
```