用正则表达遇到的问题:

empty
function statistic(str){var result = {"n1":0,"n2":0,"n3":0};//n1:大写个数,n2:小写个数,n3:数字个数var reg1 = /([A-Z])/g//判断大写的正则表达式var reg2 = /([a-z])/g//判断小写的正则表达式var reg3 = /([0-9])/g//判断数字的正则表达式for(var i in str){if(reg1.test(str[i])){result.n1++;reg1.lastIndex = 0;continue;}if(reg2.test(str[i])){result.n2++;reg2.lastIndex = 0;continue;}if(reg3.test(str[i])){result.n3++;reg3.lastIndex = 0;}}return result;}

当这样用str[i].test(/([A-Z])/g)时,结果没做什么变化,查到资料正则表达式是要在.test前面test后面()里是该字符串, 所以定义了三个正则表达式分别判断大写,小写和数字,再把if里的条件都改为reg1.test(str[i])
      方法 RegExp.exec( ) 和 RegExp.test( ) 找到的,它们都以 lastIndex 属性所指的位置作为下次检索的起始点。 比如abc,从a开始判断,第二次就从b开始判断,之前的a就不再进行判断,后来查了有两种解决方案:
      ① reg1.lastIndex = 0;方法 exec() 或 test() 再也找不到可以匹配的文本时,它们会自动把 lastIndex 属性重置为 0。
      ②直接去掉 g 标签

lastIndex属性必须配合g使用,不然就不要用g字母,小写字母和数字的个数。

lastIndex属性是可读可写的。只要目标字符串的下一次搜索开始,就可以对它进行设置。当方法 exec() 或 test() 再也找不到可以匹配的文本时,它们会自动把 lastIndex 属性重置为 0。

重要事项:不具有标志 g 和不表示全局模式的 RegExp 对象不能使用 lastIndex 属性。

提示:如果在成功地匹配了某个字符串之后就开始检索另一个新的字符串,需要手动地把这个属性设置为 0。

求出字符串中大写字母,小写字母和数字的个数相关推荐

  1. js 编写一个程序实现统计一串字符串中的英文小写字母个数!

    编写一个程序实现统计一串字符串中的英文小写字母个数!例 如:输入"axZvnNgOuyi",得到的值应该是 8: 注意:且有输入输出,直接输出不计分 <!DOCTYPE ht ...

  2. 字符串的练习 统计字符串中大写,小写,数字的个数 29

    字符串遍历的练习题 需求分析 键盘录入一个字符串,统计该字符串中大写字母字符,小写字母字符,数字字符出现的次数(不考虑其他字符) 分析步骤 1.键盘录入一个字符串. 2.定义计数器变量:记录大写/小写 ...

  3. python查找字符串出现次数_Python 中找出字符串中出现频率最高的字母

    发现一个学Python的好网站 https://py.checkio.org 第一题大概意思就是找出一个字符串中出现频率最高字母 我的思路也是直接,弄个字典,遍历字符串,将键值对填进字典里,健就是字母 ...

  4. 编写程序,求出字符串中指定字符的个数,并输出。例如,若输入字符串:a123gka412a132,输入字符为:a,则输出:3。

    #include <stdio.h> #include <string.h> int main()  {     char a[100],c;     int i,n,s=0, ...

  5. 【Java】实现统计字符串中大写、小写、数字字符出现次数

    ❤写在前面 ❤博客主页:努力的小鳴人 ❤系列专栏:算法

  6. 7-64 统计大写辅音字母 (15 分)英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。PTA:中M2021春C、Java入门练习第I段

    7-64 统计大写辅音字母 (15 分) 英文辅音字母是除A.E.I.O.U以外的字母.本题要求编写程序,统计给定字符串中大写辅音字母的个数. 输入格式: 输入在一行中给出一个不超过80个字符.并以回 ...

  7. 英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。

    英文辅音字母是除A.E.I.O.U以外的字母.本题要求编写程序,统计给定字符串中大写辅音字母的个数. 输入格式: 输入在一行中给出一个不超过80个字符.并以回车结束的字符串. 输出格式: 输出在一行中 ...

  8. 编写一个汇编语言程序,将字符串Hello World中的全部小写字母转换为大写字母,并存放回原地址处。

    编写一个汇编语言程序,将字符串"Hello World"中的全部小写字母转换为大写字母,并存放回原地址处. P176 4.10 编程思路:首先DATA段中,定义string存放字符 ...

  9. 统计一个字符串中大写字母,小写字母,以及数字的个数。

    public class StringTest {  public static void main(String[] args) {   // 封装键盘录入数据   Scanner sc = new ...

  10. 题目:分别统计字符串中大写字母和小写字母的个数。

    题目:分别统计字符串中大写字母和小写字母的个数. 代码如下: #include <conio.h> #include <stdio.h>void fun(char *s, in ...

最新文章

  1. 一个synchronized跟面试官扯了半个小时
  2. 图片序列化和反序列化成图片文件(代码)
  3. 3dmax坐标系与导出fbx的坐标系
  4. 在eclipse中修改java web项目的名称
  5. 单变量和多变量财务预警模型_SPSS数据分析,基于判别分析上市公司财务危机预警分析...
  6. 搭建Android的jenkins持续集成环境
  7. android工程怎么连手机,安卓手机怎么进工程模式 安卓手机进工程模式教程【详解】...
  8. dreamweaver网页设计作业制作 学生个人网页单页 WEB静态网页作业模板 大学生个人主页博客网页代码 dw个人网页作业成品
  9. 深入安卓Package Manager|Package Installer
  10. linux系统截图有快捷键吗,Linux下用快捷键截图
  11. *TEST 3 for NOIP 哈希有毒
  12. Android Button按钮周围添加图片
  13. 10、spss做最优尺度分析
  14. 经典0-1背包问题(C++解决代码优化版本)
  15. MongoDB——聚合操作
  16. CSP-S2022T1题解
  17. 04-C语言如何返回两个甚至多个值?
  18. Java开源 J2EE框架(二)
  19. 强大的U盘启动盘制作工具Rufus
  20. windos10安装多个绿色版本mysql教程

热门文章

  1. SL8530A DC-DC 2.6V~100V宽输入电压升压型LED面板RGB调光恒流驱动芯片
  2. 50V升压恒流LED驱动芯片
  3. python列表和字典的区别_Python中列表和字典有什么区别,分别适用于什么场景?...
  4. 【更改google chrome浏览器路径的方法】
  5. 参考文献标号字体_毕业论文参考文献格式字体
  6. t3服务器一登录就运行时错误,用友T3软件登陆系统管理提示运行时错误3709
  7. DAZ场景转换进3Dmax
  8. 1. -vinc- = -vict- 胜利,征服
  9. 系统软件项目成本构成及估算方法
  10. 9.9.5. Delaying Execution