`
befairy
  • 浏览: 36281 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

统计字符串中大小写字符的个数(正则表达式做法)

阅读更多
package number;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class CountWords {


public static void main(String[] args) {
  InputStreamReader isr=new InputStreamReader(System.in);
  BufferedReader br=new BufferedReader(isr);
  System.out.println("请输入字符串:");
  String str="";
try {
str = br.readLine();
br.close();
} catch (IOException e) {

e.printStackTrace();
}
  Pattern p = Pattern.compile("[a-z]*");//小写字母
  Matcher m = p.matcher(str);
  StringBuffer lowercase = new StringBuffer();
  while(m.find()){
   lowercase.append(m.group(0));
  }
 
  p = Pattern.compile("[A-Z]*");//大写字母
  m = p.matcher(str);
  StringBuffer uppercase = new StringBuffer();
  while(m.find()){
   uppercase.append(m.group(0));
  }
 
  p = Pattern.compile("[^a-zA-Z]*");//非英文字母
  m = p.matcher(str);
  StringBuffer others = new StringBuffer();
  while(m.find()){
   others.append(m.group(0));
  }
  System.out.println("小写字母:"+lowercase.length()+"个");
  System.out.println("大写字母:"+uppercase.length()+"个");
  System.out.println("非英文字母:"+others.length()+"个");


}

}
分享到:
评论

相关推荐

    正则表达式

    正则表达式中的特殊字符 字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。 -或- 对正则表达式功能字符的还原,如"*"匹配它...

    正则表达式30分钟入门教程

    恢复格式 文本格式约定:专业术语 元字符/语法格式 正则表达式 正则表达式中的一部分(用于分析) 对其进行匹配的源字符串 对正则表达式或其中一部分的说明 隐藏边注 本文右边有一些注释,主要是用来提供一些相关信息...

    Java-PHP-C#

    元字符是正则表达式中一类有特殊意义的字符,用来描述其前导字符(即元字符前面的字符)在被匹配的对象中出现的方式。元字符本身是一个个单一的字符,但是不同或者相同的元字符组合起来可以构成大的元字符。 元...

    jQuery formValidator表单校验插件ver2.9.1

    目前可以比较字符串和数值型)、AjaxValidator(通过ajax到服务器上做数据校验)、RegexValidator(提供可扩展的正则表达式库) 、FunctionValidator (允许用户利用外部函数进行校验) InputValidator: 值的...

    C#开发实例大全(基础卷).软件开发技术联盟(带详细书签) PDF 下载

    实例049 商品金额的大小写转换 63 实例050 设置货币值中使用的小数位数 64 实例051 格式化输入数据为货币格式 65 实例052 开发一个进制转换器 66 3.4 日期时间格式的数据处理 67 实例053 动态获得系统当前日期和时间...

    C#编程经验技巧宝典

    85 <br>0131 巧截字符串的数字 86 <br>0132 如何存储变长字符串 86 <br>0133 在进行字符串比较时忽略大小写 87 <br>0134 如何去除字符串尾空格 87 <br>0135 如何去掉字符串中所有空格 ...

    UNIX Handbook

    15.grep消除大小写:加入 i选项 23 16.特殊字符:$ ‘ “ [ ] ^ | + 23 17.grep判断变量含有[HOST]字符串 23 18.grep判断变量含有[xxx]字符串 23 19.grep匹配后缀为c h j s cpp hpp的文件 23 20.使用grep在...

    JS常用校验

    * matchPattern(value,mask) //自定义规则,mask为正确的正则表达式,返回通过自定义验证的字符串 * isEnglish(name) //判断是否为英文,正确返回ture,否则返回false * isChinese(name) //判断是否为中文,正确返回 ...

    《程序天下:JavaScript实例自学手册》光盘源码

    13.35 使用正则表达式验证日期 13.36 全面的日期选择功能 13.37 全球的时间查看表 13.38 无刷新定时取数据 13.39 取当月的最后一天 第 14章 数字、数组和统计函数特效 14.1 边打字边显示字数 14.2 创建随机数 14.3 ...

    程序天下:JavaScript实例自学手册

    13.35 使用正则表达式验证日期 13.36 全面的日期选择功能 13.37 全球的时间查看表 13.38 无刷新定时取数据 13.39 取当月的最后一天 第 14章 数字、数组和统计函数特效 14.1 边打字边显示字数 14.2 创建随机数 14.3 ...

    freemarker总结

    其它的运行符可以作用于数字和日期,但不能作用于字符串,大部分的时候,使用gt等字母运算符代替>会有更好的效果,因为 FreeMarker会把>解释成FTL标签的结束字符,当然,也可以使用括号来避免这种情况,如:(x>y)> ...

    你必须知道的495个C语言问题

    3.9 怎样才能理解复杂表达式并避免写出未定义的表达式?“序列点”是什么? 3.10在a[i]=i++;中,如果不关心a[]的哪一个分量会被写入,这段代码就没有问题,i也的确会增加1,对吗? 3.11 人们总是说i=i++的行为是...

    《你必须知道的495个C语言问题》

    书中列出了C用户经常问的400多个经典问题,涵盖了初始化、数组、指针、字符串、内存分配、库函数、C预处理器等各个方面的主题,并分别给出了解答,而且结合代码示例阐明要点。 《你必须知道的495个C语言问题》结构...

    C语言FAQ 常见问题列表

    previous up contents next C 语言常见问题集 原著:Steve Summit 翻译:朱群英, 孙 云 修订版 0.9.4, 2005年6月23日... o 8.6 我有个函数, 本该返回一个字符串, 但当它返回调用者的时候, 返回串却是垃圾信息。 ...

    你必须知道的495个C语言问题(PDF)

    3.12 我需要根据条件把一个复杂的表达式赋值给两个变量中的一 个。可以用下边这样的代码吗? ((condition) ? a : b) = complicated expression; . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 目录iii ...

Global site tag (gtag.js) - Google Analytics