java根据条件切割字符串_java中根据不同需求切割字符串
public classDemo0722 {public static voidmain(String[] args) {
String a= "测试一下怎么截取字符串123450,随便输UYGqwer09874UUBi0jsad这样就可以吗???";
String reg="[\u4e00-\u9fa5]";
Pattern pat=Pattern.compile(reg);
Matcher mat=pat.matcher(a);
String repickStr= mat.replaceAll("");
System.out.println("去除汉字后:"+repickStr);
System.out.println("去除汉字后为====="+a.replaceAll("[\u4e00-\u9fa5]", ""));
System.out.println("拿到的数字为====="+a.replaceAll("[^0-9]",""));
System.out.println("");
String regex= "[^\u4e00-\u9fa5]";
Pattern pattern=Pattern.compile(regex);
Matcher matcher=pattern.matcher(a);
String result= matcher.replaceAll("");
System.out.println("只要汉字:"+result);
System.out.println("拿到的汉字是====="+a.replaceAll("[^\u4e00-\u9fa5]", ""));
System.out.println("");
String result1= a.substring(a.indexOf("截取")+1,a.indexOf("可以"));//根据关键字截取一段字符串
System.out.println("想要的字符串为-------"+result1);
String result2= a.split(",")[0];//根据指定关键字分割两部分,取后半部分则使用[1]
System.out.println("想要的字符串部分为------"+result2);
String result3= a.substring(4, 10);//根据index来截取字符串
System.out.println("想要的字符串为-------"+result3);
String result4= a.split("0")[1];//截取两个0之间的字符串
System.out.println("相同字符之间的字符为------"+result4);
String result5=a.substring(0,a.lastIndexOf("0"));//根据字符0最后一次出现来截取
System.out.println("结果为----"+result5);
}
}
截取字符串代码如上,控制台输出结果如下图
正常来说截取字符串用到最多的几个方法就是split跟substring。split方法一般是将字符串截取成两部分,返回一个数组类型,一般我们需要的大多是String类型的,所以在后面加下[0]或者[1]。但是当字符串中出现两个以上的相同字符时,这时候如果我们以这个重复的字符为关键字来截取的话,那么截取得到的就是以这个字符分割的几个部分。举例:截取字符串为“12304560789”,这时候以0截取,那么我们得到的结果为[123, 456, 789],想要拿到第几个0之间的字符串在后面加上index下标即可。
截取字符串中的空格:第一种是首尾有空格,这时候使用String中的trim()方法,但是我以前遇到过处理excel表格中的空格问题,使用这个方法就不行了。后来百度了一下发现是因为ASCII码的问题,在java中空格是32,但在excel中空格是160,所以我们想在excel里面用这个方法去除空格的话就不行了。第二种是字符串中间有空格,这时候使用replace()方法,即replace(" ",""),这里要注意,前面那个双引号中间是有一个空格的长度。
java根据条件切割字符串_java中根据不同需求切割字符串相关推荐
- 求行指针所指的字符串数组中长度最长的字符串所在的行下标
<程序设计基础-c语言>杨莉 刘鸿翔 ISBN-978-7-03-032903-5 p137 习题5 3.行指针ss所指字符串数组中共有M个字符串,且字符串长度<N.求ss所指字符串 ...
- VB:编一个子过程DeleStr(s1,s2),将字符串s1中出现的s2子字符串删去,结果存放在s1中
题目来源:大工慕课 链接 原题:Visual Basic程序设计教程(第二版)龚沛曾主编,高等教育出版社 实验6-8 作者:Caleb Sung 题目要求 编一个子过程DeleStr(s1,s2),将 ...
- 练习2-4:重新编写函数squeeze(s1,s2),将字符串s1中的任何字符与字符串时s2中的字符匹配的字符都删除
#include <stdio.h> void squeeze(char s1[], char s2[]); int main(){/*练习2-4:重新编写函数squeeze(s1,s2) ...
- java中将json字符串_Java中JSON字符串与java对象的互换实例详解
在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好, ...
- Java把以0结尾的字符串_Java中字符串为什么不以\0结尾
其实这个问题没有什么好说的,Java里面一切都是对象,是对象的话,字符串肯定就有长度,即然有长度,编译器就可以确定要输出的字符个数,当然也就没有必要去浪费那1字节的空间用以标明字符串的结束了. 学过C ...
- java中截取部分字符串_JAVA中截取字符串substring用法详解
substring public String substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串.该子字符串始于指定索引处的字符,一直到此字符串末尾. ...
- java不能覆盖父类的_java中子类覆盖父类方法所必须满足的条件
一.描述 子类重写(覆盖)父类的方法必须满足的条件: 1.父类中的方法在子类中必须可见,即子类继承了父类中的该方法(可以显式的使用super关键字来访问父类中的被重写的方法), 如果父类中的方法为pr ...
- java如何使截取字符串_java中如何截取字符串中的指定一部分
java中如何截取字符串中的指定一部分 关注:136 答案:4 mip版 解决时间 2021-02-06 13:27 提问者妳涐執唸汰深 2021-02-06 08:56 精选 比如 F:\wor ...
- java截取前几位_java中怎么截取字符串前几位
java中可以使用substring()方法截取字符串前几位. substring() 方法返回字符串的子字符串. 语法:public String substring(int beginIndex) ...
最新文章
- WF4.0实战(六):控制WPF动画
- 分布式事务最经典的七种解决方案
- java之泛型_java之泛型
- 配置GoldenGate源端Manager参数
- 【忘川风华录】交互负责人:在奇幻和萌趣中探索国风的立体体验
- [BOI2007] Mokia
- cdp备份适合oracle吗,备份系统建设中的四个认识误区,你有吗?
- Linux Shell脚本入门教程系列之(十一)Shell while循环
- Tensorflow保存神经网络参数有妙招:Saver和Restore
- 论文笔记之:Deep Reinforcement Learning with Double Q-learning
- 《SharePoint Portal Server 2003 深入指南》即将完稿 大纲
- 超全面的JavaWeb笔记day11JSPSessionCookieHttpSession
- 鸿蒙谁法力最强,上古神话中,鸿蒙初开时有九大古神,鸿钧勉强上榜,烛龙位列前三...
- Qt中配置OpenCV
- IP变更导致fdfs文件上传服务不可用解决流程
- docker搭建php环境
- h264解码延迟优化_h264编解码末尾丢帧问题原因和解决
- 肿瘤微环境之免疫与代谢
- 期货基础知识(竞价,定价,保证金计算)
- android n进入分屏代码分析_Android分屏多窗口的实践代码
热门文章
- JAVA学习脚印2: 数据类型和运算符
- 【故障处理基础】0-12.4.4
- 红黑树RBTree原理(超易懂)
- NeRF:火爆科研圈的三维重建技术大揭秘
- js 计算两个颜色之间的渐变色值 案例
- Unity3D Shader编程】之七 静谧之秋篇: 表面着色器的写法(二)—— 自定义光照模式
- 0020 求圆锥的体积
- Fx3U源码V10.0 STM32仿三菱PLC 送Fx2N方案
- r5-4600u和r5-3550h哪个好?
- 答读者问(6):单细胞TPM矩阵如何分析?