如何判断一个java字符串出现次数中某字符出现的次数

您当前位置: >
Classification
【Javascript】
下载新闻文章相关内容
暂无相关新闻内容
判断一个字符串中出现次数最多的字符,统计这个次数
稿件来源: 阳光企业网站管理系统
& 撰稿作者: 太阳光
& 发表日期:
& 阅读次数: 935
& 查看权限: 游客查看
判断一个字符串中出现次数最多的字符,统计这个次数
先看一个网上不好的例子:
var str =&adadfdfseffserfefsefseeffffftsdg&; //命名一个变量放置给出的字符串
var maxLength = 0; //命名一个变量放置字母出现的最高次数并初始化为0
var result = ''; //命名一个变量放置结果输入
while( str != '' ){ //循环迭代开始,并判断字符串是否为空
oldStr = //将原始的字符串变量赋值给新变量
getStr = str.substr(0,1); //用字符串的substr的方法得到第一个字符(首字母)
eval(&str = str.replace(/&+getStr+&/g,'')&); //执行替换
if( oldStr.length-str.length & maxLength ){
//判断原始的字符串的长度减去替代后字符串长度是否大于之前出现的最大的字符串长度
maxLength = oldStr.length-str. //两字符串长度相减得到最大的字符串长度
result = getStr + &=& + maxLength //返回最大的字符串结果(字母、出现次数)
alert(result);
说它不好是使用了eval,不兼容标准浏览,不推荐使用。
下面是一个比较简单的方法:
var str =&adadfdfseffserfefs'efseeff$&ffftsdg&;
for(var i=0,len=0,temp=&&;i&str.i++){
var s=str.substr(i,1);
var tt=str.split(s);
if(tt.length&len){
temp=s+&出现最多次数为&+
alert(temp);
第三个方法是网上转摘的,想法也不错:
//将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数
var str = &abcdefgaddda&;
var obj = {};
for (var i = 0, l = str. i & i++) {
var key = str[i];
if (typeof obj[key] == 'undefined') {
obj[key] = 1;
obj[key]++;
/*遍历这个hash table,获取value最大的key和value*/
var max = -1;
var max_key = &&;
for (key in obj) {
if (max & obj[key]) {
max = obj[key];
alert(&字符:&+max+& 出现次数:&+max_key);
但奇怪的是在IE8下竟然发生max_key=undefinded 690)this.width=690" alt="" src="/images/Picture/010.gif" />
关键词: 前端试题,Javascript,数组 & 编辑时间:
2高兴0支持0搞笑0不解0谎言0枪稿1震惊0无奈0无聊0反对0愤怒
上一篇:下一篇:
中搜索: 中搜索:
article Pictrue
copyright(C)
阳光企业网站管理系统, all rights reserved。站长:太阳光 建站时间: 页面加载时间查看: 10207|回复: 32
【讨论】查找某一个字符串中某一个字符(串)出现的次数
论坛徽章:83
var str1 :=''
var str2:='10'
想查询str2在str1的位置,正常情况下应该返回0,但是用INSTR('','10')返回1,各位看看还有什么函数可以处理这样的数据,谢谢。。
, , , , , , , , ,
论坛徽章:737
返回0?10不就在那个字符串中吗
论坛徽章:83
oracle_cj 发表于
返回0?10不就在那个字符串中吗
01 02 03 04 数据格式是这样的,只是没有空格连在一起了。
认证徽章论坛徽章:12
SQL& select INSTR('','10')
INSTR('','10')
--------------------------
& && && && && && && && & 2
论坛徽章:83
bizhanjie 发表于
SQL& select INSTR('','10')
INSTR('','10')
不好意思,描述的有些问题,数据格式是01 02 03 04只是把空格去掉了,正常是不应该把10查出来
论坛徽章:310
固定两位一组?那就先拆分再比较呗
论坛徽章:737
(SELECT '01 02&&03 04 01 05 06' STR
& & FROM DUAL
&&UNION ALL
&&SELECT '01 02&&03 04 05 06' FROM DUAL)
SELECT REGEXP_COUNT(STR, '01') FROM T;
论坛徽章:737
好久没有见lz了,还记得我嘛
论坛徽章:83
oracle_cj 发表于
好久没有见lz了,还记得我嘛
呵呵,必须的。
论坛徽章:83
四十五度向上 发表于
固定两位一组?那就先拆分再比较呗
对,两位一注,拆分麻烦啊
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号

我要回帖

更多关于 js判断字符串出现次数 的文章

 

随机推荐