正则表达式例题-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 的全部内容了,希望能对你有所帮助!

相关推荐
召摇3 分钟前
Spring Boot 内置工具类深度指南
java·spring boot
艾莉丝努力练剑9 分钟前
【C++】类和对象(下):初始化列表、类型转换、Static、友元、内部类、匿名对象/有名对象、优化
linux·运维·c++·经验分享
疋瓞24 分钟前
C++_STL和数据结构《1》_STL、STL_迭代器、c++中的模版、STL_vecto、列表初始化、三个算法、链表
数据结构·c++·算法
JJJJ_iii26 分钟前
【左程云算法09】栈的入门题目-最小栈
java·开发语言·数据结构·算法·时间复杂度
所愿ღ29 分钟前
JavaWeb-Session和ServletContext
java·笔记·servlet
枫叶丹433 分钟前
【Qt开发】显示类控件(三)-> QProgressBar
开发语言·qt
过尽漉雪千山36 分钟前
Flink1.17.0集群的搭建
java·大数据·linux·flink·centos
爱读源码的大都督41 分钟前
为什么Spring 6中要把synchronized替换为ReentrantLock?
java·后端·架构
Bear on Toilet1 小时前
继承类模板:函数未在模板定义上下文中声明,只能通过实例化上下文中参数相关的查找找到
开发语言·javascript·c++·算法·继承
程序员东岸1 小时前
C语言入门指南:字符函数和字符串函数
c语言·笔记·学习·程序人生·算法