不使用正则表达式 匹配字符串(字母)

该博客介绍了一种不依赖正则表达式的方法来匹配只包含小写字母或大写字母的字符串。通过遍历输入字符串,检查每个字符是否在字母范围内,将符合条件的字符拼接成新的字符串。最终输出所有符合条件的连续字母子串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package a_不常用类;
public class 正则表达式_no {
public static void main(String[] args){
String str = "asd&sdklkl";
comp(str);
// char ch = 'a';
// System.out.println(ch+0);
// System.out.println('z'>'x');
// System.out.println('A'+0);
// System.out.println('Z'+0);

}
public static void comp(String str){
int index = 0;
char[] chs = str.toCharArray();
String[] sts = null;
StringBuilder sb = null;
int len = chs.length;
sts = new String[len/2+1];
boolean newChar = false;
for(int i=0;i<len;i++){
char c = chs[i];
if(i==0){
sb = new StringBuilder();
if(check(c))
sb.append(c);
}else{
if(check(c)){
if(newChar){
sb = new StringBuilder();
sb.append(c);
newChar = false;
}else{
sb.append(c);
if(i==len-1)
sts[index++] = sb.toString();
}

}
else{
if(newChar)//特殊字符
newChar = true;//新建字符串
else{
sts[index++] = sb.toString();
newChar = true;//新建字符串
}
}
}
}
System.out.println("符合的字符串有:"+index+"个");
for(int i=0;i<index;i++){
System.out.println("依次为:"+sts[i]);
}
}
private static boolean check(char c){
return 'a'<=c&&c<='z'||('A'<=c&&c<='Z');
}
}































评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值