字符串的拆分和正则

作者在 2018-05-02 21:51:57 发布以下内容
import java.util.Scanner;

一、判断字符串中特定字符串的个数

1.两个工具类:

2.首字母大写(用到toUpperCase方法、substring方法:前包后不包);

判断是否全为数字(可被正则代替)

/**

 * 判断特定字符串个数
*/
public class StringDemo12 {
public static void main(String[] args) {
String str = "javajavajavasdfsfajavasdfsdajavasdferja";
String ob = "java";
int strnum = str.length();
int cishu = strnum/4;
int num = 0;
for(int j = 0 ; j < strnum-3 ; j++){
String sub = str.substring(j,j+4);
if(sub.equals(ob)){
num++;
}
System.out.println(num);
}
System.out.println("************");
System.out.println(num);
System.out.println(up(str));
String number = "sssssss113333";
System.out.println(isNumber(up(str))?"有数字":"没有数字");
System.out.println(isNumber(number)?"有数字":"没有数字");
 
}
/**
* 将字符串首字母大写
* @param str
* @return
*/
public static String up(String str){
return str.substring(0,1).toUpperCase()+str.substring(1);
}
/**
* 判断字符串中是全部是数字
* @param str
* @return
*/
public static boolean isNumber(String str){
char[] a = str.toCharArray();
for(int i = 0 ; i < a.length ; i++){
if(a[i] > '9' && a[i] < '0'){
return true;
}
}
return false;
}
}

二、实现字符串的拆分(用到split方法,用for循环遍历)

/**
 * 实现拆分
*/
public class StringDemo10 {
public static void main(String[] args) {
String name = "xingming:zhangfei|mima:123|xingbie:nan";
String[] a = name.split("\\|");
for(int i = 0 ; i < a.length ; i++){
System.out.println(a[i]);
String[] b = a[i].split(":");
System.out.println(b[0]+"="+b[1]);
}
}
}
三、正则表达式的一个工具类,用到public boolean matches(String regex)进行字符串的验证

/**
 * 正则判断
*/
public class StringDemo13 {
public static void main(String[] args) {
System.out.println(isRegex("123","\\d+"));
}
/**
* 正则匹配是否正确
* @param str 要匹配的字符串
* @param regex 正则表达式
* @return 是否匹配
*/
public static boolean isRegex(String str,String regex){
return str.matches(regex);//字符串验证
}
}

默认分类 | 阅读 2011 次
文章评论,共0条
游客请输入验证码
文章分类
文章归档
最新评论