用 JavaScript 验证包含数字的字符串
问题
我们需要编写一个 JavaScript 函数,该函数接收一个字符串 str。我们的函数应该根据数字前的字母来验证字符串中的字母。
我们需要根据数字拆分字符串,然后将数字与随后子字符串中的字符数进行比较。如果它们都匹配,则字符串有效,我们应该返回 true,否则返回 false。
例如,−
5hello4from2me
应该返回 true
因为按数字拆分后,字符串变为“hello”、“from”、“me”,并且所有这些字符串的长度与它们之前的数字相同
示例
以下是代码 −
const str = '5hello4from2me';
const validateString = (str = '') => {
const lenArray = [];
let temp = '';
for(let i = 0; i < str.length; i++){
const el = str[i];
if(+el){
lenArray.push([+el, '']);
}else{
const { length: len } = lenArray;
lenArray[len - 1][1] += el;
};
};
return lenArray.every(sub => sub[0] === sub[1].length);
};
console.log(validateString(str));输出
以下为控制台输出 −
true
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP