Get the index of a first number in a String using JavaScript
Get the index of a first number in astring
To get the index of a first number in a string, we can use the built-in String.search() method by passing the regular expression /\d/
that matches the digits. The search() method returns the index of the first matched number.
Here is an example:
const str = "My house no 234 located in denmark";
const fristNumberIndex = str.search(/\d/);
console.log(fristNumberIndex);
Output:
12
In the example above, we have use the String.search() method to get a first index in the string.
In the regular expression we used \d
flag, where it matches the digits ranging from 0-9, it is similar to [0-9]
.
Currently, we are not doing any null check in our code. For example, if a given string doesn’t contain any number it means we need to log some output instead of error in console. To handle this case, we can use if else condtion.
const str = "My house no 234 located in denmark";
const firstNumberIndex = str.search(/\d/);
if(firstNumberIndex){
console.log(firstNumberIndex); // 12
}else{
console.log("String doesn't have any numbers");
}
Now, if a given string doesn’t contain any numbers we are logging a destructive message in the console instead of error.