文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | firefox | WPS | 杀毒软件 | Picasa
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形图像 办公软件 媒体动画 精文荟萃 常用软件 网页编程 技术开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院网络编程Script如果用JS得到字符串中出现次数最多的字母
精品推荐
特别推荐
·用户体验:JS实现仿新浪信息提示效果
·网页特效:图片随机显示实例详解
·JavaScript入门学习书籍的阶段选择
·Javascript代码轻松隐藏网页源文件
·网页制作:JavaScript仿Windows关机效果
·网页制作Javascript经典小技巧总结
·JavaScript的9个陷阱及评点
·简单介绍用JSP来实现文件下载功能的几种方式
·网页播放器实现全屏的方法总结
·菜鸟学习javascript实例教程
·JavaScript 经典代码大全
·汇总:一些不错的使用频率比较高的JS函数
·Javascript模拟的DOS窗口
·JavaScript仿Windows关机效果
·仿windows选项卡效果拾零
·JavaScript经典效果集锦
·jscript/javascript条件编译
·Js之软键盘实现(源码)
·弹出窗口window.open()的参数列表
·javascript gb2312转utf-8
热点TOP10
·javascript 常用代码大全
·菜鸟学习javascript实例教程
·JavaScript经典效果集锦
·B/S开发常用JavaScript技术
·40种网页常用小技巧
·服务端VBScript与JScript几个相同写法
·网页屏蔽(左右键,代码等)的非JS方法
·如何判断ACTIVEX控件是否下载
·Microsoft VBscript运行时错误'800a000d'的解决方案
·一些很实用且必用的小脚本代码
·一个以Javascript+xml的树型列表
·JavaScript幻灯片效果
·用window.location.href实现刷新另个框架页面
·javascript+xml实现二级下拉菜单,不会被任何标签或元素遮住
·如何实现一个表格表头不动tbody区域用滚动条可以滚动
·javascript gb2312转utf-8
·网页两侧浮动广告代码
·网站左右两边浮动广告JS代码
·用VB编写ActiveX DLL实现ASP编程
·网页制作:JavaScript仿Windows关机效果

如果用JS得到字符串中出现次数最多的字母

日期:2007年9月12日 作者: 查看:[大字体 中字体 小字体]


网上有这样一道题目:
Quote:
一个字符串String=“adadfdfseffserfefsefseetsdg”,找出里面出现次数最多的字母和出现的次数。经典的解答思路为:取出字符串的第一个字符(首字母),利用的字符串的replace方法将符合正则表达式(第一个字符)替代为空,此字母出现的次数为原始的字符串长度减去替代后的字符串长度。循环迭代找出长度最长的字母。
<script type="text/javascript">
//<![CDATA[

var str ="adadfdfseffserfefsefseeffffftsdg"; //命名一个变量放置给出的字符串
var maxLength = 0; //命名一个变量放置字母出现的最高次数并初始化为0
var result = ''; //命名一个变量放置结果输入

while( str != '' ){ //循环迭代开始,并判断字符串是否为空
  oldStr = str; //将原始的字符串变量赋值给新变量
  getStr = str.substr(0,1); //用字符串的substr的方法得到第一个字符(首字母)
  eval("str = str.replace(/"+getStr+"/g,'')"); //详细如补充

  if( oldStr.length-str.length > maxLength ) { //判断原始的字符串的长度减去替代后字符串长度是否大于之前出现的最大的字符串长度
 maxLength = oldStr.length-str.length; //两字符串长度相减得到最大的字符串长度
 result = getStr + "=" + maxLength //返回最大的字符串结果(字母、出现次数)
 }
}

alert(result) //弹出结果

//]]>
</script>
补充:
eval("str = str.replace(/"+getStr+"/g,'')");
可能很多人想这样写str = str.replace(/getStr/g,''),可结果却是会出错的。为什么呢,在这句中正则表达式匹配的是getStr字符串,而不是getStr指向的首字母。通过eval方法可以避免(首先getStr得到指向的首字母,用字符串连接"str = str.replace(/"+getStr+"/g,'')",最后在eval中执行这段代码,即:先解释Javascript代码,然后再执行它)。

PS: 小马 指出eval性能不好,容易出错,而且可读性不好。建议将eval("str = str.replace(/"+getStr+"/g,'')")改为:
str = str.replace(new RegEXP(getStr,"g"),"")

(出处:清风下载学院






上一篇:CSS制作网页实例:用CSS控制li标记样式

下一篇:无内容div占据空间的触发条件和解决方法

如果用JS得到字符串中出现次数最多的字母 相关文章:
·常用英文名字排行榜
·女子英文名字含义 来历
·女孩起名常用字
·男女生英文名大全-给自己起个好名字
·各种文件后缀名字及打开方式大全
·DOS命令字典
·在QQ空间加入滚动字的代码
·易学易用的数字五笔输入法
·叶子猪大话攻略:大话帮派搞笑类名字大全
·字体特效 Photoshop制作红粉可爱的签名字体
如果用JS得到字符串中出现次数最多的字母 相关软件:
·金山打字通2003 正式版
·300多种中文字体
·兽血沸腾(全文字版)
·素材字体-中国龙字库
·微软雅黑字体
·新华字典(电子版) V2.0
·很多人要的毛笔书法字体(启功体 简体+繁体)
·金山打字通2006完整版+29M精简版(48小时成为打字高手 精通5笔及拼音)
·新中华字酷之经典字库 全套78种好东西
·微软中文字库最新45款

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:vipcn