import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class Cut {

// 1、 正则表达式

// 利用正则表达式判断字符串中是否都为字母和数字

public static Boolean regexIsWordOrNumber(String str) {

return str.matches("[^A-Za-z0-9]");

}

// 利用正则表达式提取字符中的字母和数字

public static String regexCut(String str) {

return str.replaceAll("[^A-Za-z0-9]", "");

}

// 2、 ASCII

// 利用ASCII判断字符串中是否都为字母和数字

public static Boolean ASCIIIsWordOrNumber(String str) {

for(int i=0;i

if( (str.charAt(i)>=48 && str.charAt(i)<=57) || (str.charAt(i)>=65 && str.charAt(i)<=90) || (str.charAt(i)>=97 && str.charAt(i)<=122) ){

i++;

continue;

}

return false;

}

return true;

}

// 利用正则表达式提取字符中的字母和数字

public static String ASCIICut(String str) {

String strCut="";

for(int i=0;i

//   方法一:

/*if( (str.charAt(i)>=48 && str.charAt(i)<=57) || (str.charAt(i)>=65 && str.charAt(i)<=90) || (str.charAt(i)>=97 && str.charAt(i)<=122) ){

strCut+=str.charAt(i);

}*/

//   方法二:数字部分可以用java自带函数判断一个字符是否是数字

if( Character.isDigit(str.charAt(i)) || (str.charAt(i)>=65 && str.charAt(i)<=90) || (str.charAt(i)>=97 && str.charAt(i)<=122) ){

strCut+=str.charAt(i);

}

}

return strCut;

}

// 3、 截取连续部分(字母等)

// 3.1、 截取连续的数字  【读取字符串中第一个连续的字符串,不包含后面不连续的数字】

public static String getNumbers(String content) {

Pattern pattern = Pattern.compile("\\d+");   //英文字母数字为 "[A-Za-z0-9]+"

Matcher matcher = pattern.matcher(content);

while (matcher.find()) {

return matcher.group(0);

}

return "";

}

// 3.2、 截取连续的非数字  【读取字符串中第一个连续的字符串,不包含后面不连续的非数字】

public static String getNotNumbers(String content) {

Pattern pattern = Pattern.compile("\\D+");

Matcher matcher = pattern.matcher(content);

while (matcher.find()) {

return matcher.group(0);

}

return "";

}

/* 测试部分 */

public static void main(String[] args) {

String str = "中华人民共和国@AZ^123#az%456Mn*789";

// 1、正则

if(!Cut.regexIsWordOrNumber(str))//正则判断不全是字母和数字

System.out.println("1---"+Cut.regexCut(str));

else

System.out.println("1---"+str);

// 2、 ASCII

if(!Cut.ASCIIIsWordOrNumber(str))//正则判断不全是字母和数字

System.out.println("2---"+Cut.ASCIICut(str));

else

System.out.println("2---"+str);

// 3、截取连续部分

str="99AZ123中国99az";

System.out.println("3.1 第一组连续数字字符串---"+Cut.getNumbers(str));

System.out.println("3.2 第一组连续非数字字符串---"+Cut.getNotNumbers(str));

}

}

java提取字符串中字母_java截取字符串中的字母数字相关推荐

  1. java 字符串第一个_java 截取字符串第一个字符

    展开全部 使用32313133353236313431303231363533e58685e5aeb931333366306438substring() 方法返回字符串的子字符串.详细解析如下: 1. ...

  2. java 中利用subString 截取字符串中第三个/后面的内容,并将/用代替

    原文地址为: java 中利用subString 截取字符串中第三个"/"后面的内容,并将/用>代替 private String extractString(String ...

  3. oracle正则表达式截断,在oracle中使用正则表达式截取字符串

    在oracle中使用正则表达式截取字符串 Sql代码 --以下两条语句,将summary按-分解为两段字符串 regexp_substr(summary, '[^-]+', 1, 1) as _wor ...

  4. java split 数字_java截取字符串,截串,substring和split,分割字母和数字,正则缝隙...

    需求,把"01:大汽车",分成01和大汽车 有两种做法:一是substring Java代码 1 packagetest;2 3 public classsubstringTest ...

  5. java 字符串截取_java截取字符串,截串,substring和split,分割字母和数字,正则缝隙...

    需求,把"01:大汽车",分成01和大汽车 有两种做法:一是substring package test; public class substringTest { public ...

  6. java中截取后几位字符串_java截取字符串后几位

    java中常用的字符串的截取方法_计算机软件及应用_IT/计算机_专业资料.jsp中常见使用技术,js,jstl,eclipse,java 1.length() 字符串的长度 例:char chars ...

  7. java中英文汉语混合排序_Java编程实现中英混合字符串数组按首字母排序的方法...

    本文实例讲述了Java编程实现中英混合字符串数组按首字母排序的方法.分享给大家供大家参考,具体如下: 在Java中对于字符串数组的排序,我们可以使用Arrays.sort(String[])方法很便捷 ...

  8. java 字符串 字符查找_java之字符串中查找字串的常见方法

    1.int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引. int indexOf(String str, int startIndex):从指定的索引处开 ...

  9. java截取字符串后几位_java截取字符串后几位字符的方法

    java截取字符串后几位字符的方法: java中截取字符串中最后几个字符可以使用String类的substring方法,具体用法参考下方说明: 1.substring(int beginIndex)s ...

最新文章

  1. 计算机网络·通俗理解RIP协议(距离向量算法计算)
  2. Cisco路由器交换机安全配置
  3. 论文浅尝 - WWW2020 | 从自然语言交互中提取开放意图
  4. java.lang.ClassNotFoundException: lombok.Data
  5. linux Ubuntu安装ftp并将本地文件上传到云服务器
  6. 面试题,你觉得什么样的产品适合做成saas?
  7. VINS(五)非线性优化与在线标定调整
  8. godaddy mysql 乱码_Godaddy主机乱码的解决方法 | Godaddy美国主机中文指南
  9. 高岭土吸附阳离子_高岭石对金属阳离子的吸附特性研究
  10. 计算机网络自顶向下方法 习题参考答案 第一章
  11. 自然辩证法小总结思维导图
  12. html主菜单和子菜单,刻录dvd光盘设置dvd菜单 只要子菜单可以吗 不要主菜单的
  13. Linux内核——任务管理
  14. 杰理之微信语音前2S声音小修改【篇】
  15. 国家鼓励的软件企业定期减免企业所得税
  16. 呆B笑话集锦大全(超强爆笑)
  17. JSP学习并实现的过程--day01
  18. 构建之法 20162316刘诚昊
  19. 试一试 kolla部署OpenStack Ocata
  20. 轻松判断放大电路的负反馈类型(电压反馈,电流反馈等有实例)

热门文章

  1. PR2021版 剪辑基础功能(素材的导入.脱机.视频序列.源截取等功能的实现)
  2. 7款适合地产/房产代理中介的特殊楼层平面图软件
  3. 解决启动虚拟机进入系统时宿主机自动重启状态问题
  4. 2014:手机游戏中那些正在变迁的元素
  5. NeurIPS 2022高分论文!DeRy:让知识迁移像拼积木一样简单高效!
  6. 前沿视频教室,学习网页和动画的设计开发制作技巧http://learning.artech.cn/
  7. 如何量化一个csgo player
  8. 这种公司就应该和他硬刚!!!
  9. 安乐高机器人图纸_乐高机器人拼装图纸 | 手游网游页游攻略大全
  10. x86架构手机跑安卓好吗?