java之字符串(正则)


 

java 11 字符串新方法
	lines() 方法
	repeat() 
	isBlank()


字符串格式化  String.format();
System.out.printf(); 格式化输出 %s %d %f %tF
String.format(); 返回格式化后的字符串
%s    字符串
%d    数字
%03d  3位数字
%f    小数
%t    制表位

正则表达式?
	字符串模式 规则
正则表达应用领域:字符搜索 检查 替换

String 对象中支持正则表达式的方法
	ReplaceAll()  替换
	match()       匹配
	split()       拆分

java 正则表达式工具类
	java.util.regex包下
	Pattern 模式类
	Matcher 匹配器类


\\d 代表1位数字
[0-9] 代表1位数字
[1,3,5] 代表1位数字,范围在135

*  代表前边元字符,0个或多个 {0,}
.   任意字符
+ {1,}
? {0,1}
{n}  
()
|

.*[0-9].*   数字
.*[a-zA-Z].*  字母
.*[\u4e00-\u9fa5]{3}.*  汉字

1、正则表达式实现判断有没有数字,有没有中文,有没有英文, 手机号判断格式

public class Zuo2 {
public static void main(String[] args) {
String str="cdsgf第三个776";
if(str.matches(".*\\d.*")) {
System.out.println("含有数字");
}else {
System.out.println("不含数字");
}

if(str.matches(".*[\\u4e00-\\u9fa5].*")) {
System.out.println("含有中文");
}else {
System.out.println("不含中文");
}
if(str.matches(".*[a-zA-Z].*")) {
System.out.println("含有英文");
}else {
System.out.println("不含英文");
}
str=str.replaceAll("\\d","");
System.out.println(str);
str ="13798797927";
if(str.matches("1[3,5,7,,8,9]\\d{9}")) {
System.out.println("是电话号");

}else {
System.out.println("不是电话号");

}
}

  3、求字符串中所有数字的和

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Zuo3 {

public static void main(String[] args) {
String s="0f8oi324oi3r2893r3jur0yr";
Pattern p=Pattern.compile("\\d{1,}");
Matcher m=p.matcher(s);
System.out.println(p);
System.out.println(m);
// System.out.println(m.find());
int sum=0;
StringBuilder str=new StringBuilder();
while(m.find()) {
String temp=m.group();
sum+=Integer.parseInt(temp);
str.append(temp+"+");
}
str.replace(str.length()-1, str.length(), "=");
System.out.println(str.toString()+sum);


}

}


					


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM