查找String中出现最多字符的次数和个数
Sting 的charAt方法返回相应位置的字符,使用该方法遍历String,将每个字符存入对象属性,遍历属性得到最多字符个数
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
</head> <body> <script>
window.onload = function() {
new GetChar("lanleilinhello");
} function GetChar(str) {
this.obj = {};
this.len = str.length;
for(var i = 0; i < this.len; i++) {
var c = str.charAt(i);
//将每个字符作为对象属性
if(this.obj[c]) {
this.obj[c]++;
} else {
this.obj[c] = 1;
}
}
console.log(this.obj);
//遍历对象
this.max = 0;
this.maxChar = '';
for(var key in this.obj) {
if(this.max < this.obj[key]) {
this.max = this.obj[key];
this.maxChar = key;
}
}
console.log("最多的字符是" + this.maxChar);
console.log("出现的次数是" + this.max);
}
</script>
</body> </html>
采用构建json的方法:
var s='lannn';
var json={};
var num=1;
for(let i=0;i<s.length;i++){
var c=s.charAt(i);//出现过的字符作为json的key
if(json[c]){//若出现过字符,key值加一
num++
json[c]=num;
}else{
json[c]=1;
}
}
console.log(json)
var max=0;
var maxChar='';
for(var key in json){
if(max<json[key]){//若max小于key值则将key值赋给max,从而取得最大次数
max=json[key];
maxChar=key;
}
}
console.log('最多的字符为 '+maxChar);
console.log('次数 '+max);
去除数组中重复数字:
window.onload = function() {
var e = 'ab cde';
//将字符串反转
var a = e.split('').reverse().join('');
console.log(a);
//取代空格
let b = e.replace(/\s/, '+');
console.log(b)
//中间加+
var c = e.split('');
var arr = [];
for(var i = 0; i < c.length; i++) {
arr.push(c[i]);
arr.push('+');
}
console.log(arr.join('').slice(0, -1));
//将数字 12345678 转化成 RMB 形式 如: 12,345,678,反过来每三个加,
var num = {}; //命名空间
num.n = 12345678;
num.s = num.n.toString();
num.a = num.s.split('').reverse();
num.arr = [];
for(let i = 0; i < num.a.length; i++) {
num.arr.push(num.a[i]);
if((i + 1) % 3 == 0) {
num.arr.push(',');
}
}
console.log(num.arr.reverse().join(''));
//生成 5 个不同的随机数
let ranNum = [];
for(let i=0;i<5;i++){
ranNum[i]=Math.floor(Math.random()*10)+1;
for(let j=0;j<i;j++){
if(ranNum[j]==ranNum[i]){
i--;//重复的数字重新生成新数字覆盖
}
}
}
console.log(ranNum)
//去掉数组中重复的数字,立flag,新数组中所有项与原数不同,flag可推入
let arr1=[2,46,7,845,7,7,7,73];
let arr2=[];
let flag=1;
for(let i=0;i<arr1.length;i++,flag=1){
for(let j=0;j<i;j++){
if(arr2[j]==arr1[i]){
flag=0
}
}
flag?arr2.push(arr1[i]):0;
}
console.log(arr2) //去掉重复数字方法二,新数组indexOf==-1(远数组中某项在新数组中不含,可推入)
var arr=[1,1,2,2,3,3,4,4];
var arr2=[];
for(var i=0;i<arr.length;i++){
if(arr2.indexOf(arr[i])==-1){
arr2.push(arr[i]);
}
}
alert(arr2);
}
查找String中出现最多字符的次数和个数的更多相关文章
- Javascript 查找字符串中出现最多的字符和出现的次数
<script type="text/javascript"> //查找字符串中出现最多的字符和出现的次数 var str = 'Thatwheneying its o ...
- Java-J2SE学习笔记-查找一个String中,subString的出现次数
1.查找一个String中,subString的出现次数 2.代码 package Test; public class TestStringContain { public static void ...
- 使用Set去除String中的重复字符
使用Set去除String中的重复字符 public class test14 { public static void main(String[] args) { String str = &quo ...
- Js练习题之查找字符串中出现最多的字符和个数
如sssfgtdfssddfsssfssss,出现最多的字符是s,出现了12次 传统写法 分析: 1.准备一个空的json,通过循环字符串的每个字符来看,如果json里没有这个字符,就在json里创建 ...
- FindLetter 类——查找文件中特定的字符,每一行开头为某一个字符,则跳过
/*统计除了>之外的行里面CHED四个字母总数*/ #include<fstream> #include<iostream> #include<cstring> ...
- 【SQL Server 学习系列】-- 获取字符串中出现某字符的次数及字符某次出现的下标
) = '1_BB_CC_DD_AA_EE_YY_WW_HH_GG' --// 1. 获取下划线在字符串中出现的次数 SELECT LEN(@Str) - LEN(REPLACE(@Str, '_', ...
- java中去除字符串(String)中的换行字符(\r \n \t)
例1: public class Test { public static void main(String[] args) { String s = "'sds gdasda" ...
- 【c++】删除string中指定的字符
使用string::iterator(字符串迭代器)从开始 str.begin() 迭代到最后 str.end() ,再使用string.erase(const_iterator p)函数来删除迭代器 ...
- 在java中除去字符串(String)中的换行字符(\r \n \t)
我们先来看几个例子: 例1: public class Test { public static void main(String[] args) { String s = "'sds gd ...
随机推荐
- 方法 -------JavaScript
本文摘要:http://www.liaoxuefeng.com/ 在一个对象中绑定函数,称为这个对象的方法. 在JavaScript的中,对象的定义是这样的: var xiaoming = { nam ...
- Android驱动开发5-7总结
Android深度探索5-7章总结 介绍了S3C6410开发板的功能,开发板的不同主要是在烧录嵌入式系统的方式不同,以及如何在此开发板上安装Android.紧接着学到介绍到如何在多种平台,使用多种方式 ...
- LOJ#6342. 跳一跳(期望)
题意 $n \leqslant 10^5$ Sol 随便推一推就好了吧.. $f[i] = \frac{f[i] + f[i +1] + \dots f[n]}{n - i + 1} + 1$ 移一下 ...
- ubuntu16.04更换镜像源
1.备份原有 cp /etc/apt/sources.list /etc/apt/sources.list.old 2.打开阿里巴巴镜像源: https://opsx.alibaba.com/mir ...
- lnmp启用pathinfo并隐藏index.php
编辑如下区段: location ~ [^/]\.php(/|$) { # comment try_files $uri =404; to enable pathinfo try_files $uri ...
- A Bug's Life(削弱版食物链)
Description Background Professor Hopper is researching the sexual behavior of a rare species of bug ...
- Python中的dict
dict_lst = [ ('字典的键必须可哈希',), ('字典的键重复覆盖',), ('字典可迭代') ('增',), ('删',), ('改',), ('查',), ('练习',), ] 字典的 ...
- has value '1.8', but '1.7' is required
使用java7,自己又想在空闲时间学一些java8的新特性,故在安装完1.7之后又安装了1.8 eclispe在启动时报’has value ‘1.8’,but’1.7’ is required’的错 ...
- 解析XML格式数据
学习解析XML格式的数据前,搭建一个简单的web服务器,在这个服务器上提供xml文本用于练习. 一.搭建Apache服务器 在Apache官网下载编译好的服务器程序,安装.对于Windows来说127 ...
- visual studio 2010 自带reporting报表本地加载的使用
原文:visual studio 2010 自带reporting报表本地加载的使用 在这家公司时间不长,接触都是之前没玩过的东东,先是工作流引擎和各种邮件短信的审核信息,后又是部署reporting ...