2.请写出函数,用于查找最长数字字符串的位置,例如输入”12abc3de33547f9g”,则返回8,即“33547”的开始下标位置
时间: 2024-03-09 17:45:58 浏览: 116
获取最长字符串
可以使用正则表达式来匹配数字字符串,然后遍历所有匹配到的数字字符串,找到最长的那个,并返回其起始下标位置。
下面是实现的代码:
```javascript
function findLongestNumStr(str) {
let regex = /\d+/g;
let match;
let maxLen = 0;
let startIndex = -1;
while ((match = regex.exec(str)) !== null) {
let len = match[0].length;
if (len > maxLen) {
maxLen = len;
startIndex = match.index;
}
}
return startIndex;
}
let str = '12abc3de33547f9g';
let index = findLongestNumStr(str);
console.log(index); // 输出 8
```
在上面的代码中,我们使用了正则表达式`\d+`来匹配数字字符串,然后在while循环中遍历所有匹配到的结果,找到最长的那个,并记录其起始下标位置。最后返回这个位置即可。
阅读全文