正则表达式例题-PTA

PTA-7-55 判断指定字符串是否合法-CSDN博客


7-54 StringBuffer-拼接字符串

题目:

输入3个整数n、begin、end。

将从0到n-1的数字拼接为字符串str。如,n=12,则拼接出来的字符串为:01234567891011

最后截取字符串str从begin到end(包括begin,但不包括end)之间的字符串,并输出。

代码实现如下:

java 复制代码
import java.util.Scanner;

public class Main {
	public static void main(String[]args) {
		StringBuffer buf = new StringBuffer();
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();
		int begin = scan.nextInt();
		int end = scan.nextInt();
		for(int i = 0;i<n;i++) {
			buf.append(i);
		}
		String ret = buf.subSequence(begin, end).toString();
		
		System.out.println(ret);
	}
}

7-55 判断指定字符串是否合法

题目:

输入一个字符串,判断指定字符串是否合法,要求字符串由7个字符组成,并且第一位必须是大写字母,2-4为必须是小写字母,后3为必须是数字字符,要求使用正则表达式来实现。

代码实现如下:

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String S = scan.next();
        if(S.matches("[A-Z]"+"[a-z]{3}"+"\\d{3}"))
            System.out.println(S + "合法");
        else
         System.out.println(S + "不合法");
    }
}

7-56 判断Email地址的合法性

题目:

输入一个Email地址,然后使用正则表达式验证该Email地址是否正确,要求用户名由字母、数字或者下划线组成,域名只有有1个" ." 和两个字符串组合,域名第1个字符串由英文字母和数字组成,域名中第2个字符串即后缀为com或.cn

代码实现如下:

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String S = scan.next();
        String[] str = S.split("\\.");

        if(str[1].matches("(com)|(cn)")) {
            System.out.println(S+"是正确的Email地址");
            return;

        }
        System.out.println(S+"不是正确的Email地址");
    }
}

7-57 使用正则表达式判断IP地址

题目:

编写程序,使用正则表达式判断给定的IP地址是否是一个合法的IP地址。

说明:合法的IP地址范围为0.0.0.0-255.255.255.255,也就是每一小节的范围是0~255。

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String S = scan.next();
        boolean flag = S.matches("[0-2][0-5][0-5]\\." +
                "[0-2][0-5][0-5]\\." +
                "[0-2][0-5][0-5]\\." +
                "[0-2][0-5][0-5]");
        if(flag) {
            System.out.println(S + "是合法的IP地址");
        }
        else {
            System.out.println(S + "不是合法的IP地址");
        }
    }
}

以上就是 正则表达式例题-PTA 的全部内容了,希望能对你有所帮助!

相关推荐
tqs_1234516 分钟前
redis zset score的计算
java·算法
fdc201717 分钟前
Avalonia 基础导航实现:从页面切换到响应式交互全指南
开发语言·javascript·ecmascript
kaili23031 分钟前
IDEA试用过期,无法登录,重置方法
java·intellij-idea
没有bug.的程序员37 分钟前
Redis 内存优化与压缩:从原理到实战的完整指南
java·数据库·redis·内存优化·压缩内存
wangwangblog1 小时前
LLVM 数据结构简介
开发语言·数据结构·c++
有谁看见我的剑了?1 小时前
k8s-临时容器学习
学习·容器·kubernetes
Yeats_Liao1 小时前
Java 软件测试(三):Mockito打桩与静态方法模拟解析
java·开发语言
JAVA学习通1 小时前
RabbitMQ---面试题
java·开发语言
七芒星20231 小时前
ResNet(详细易懂解释):残差网络的革命性突破
人工智能·pytorch·深度学习·神经网络·学习·cnn