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

相关推荐
Qhumaing几秒前
C++学习:【PTA】数据结构 7-1 实验6-1(图-邻接矩阵)
c++·学习·算法
Overt0p1 分钟前
抽奖系统(6)
java·spring boot·redis·设计模式·rabbitmq·状态模式
No0d1es1 分钟前
2025年12月 GESP CCF编程能力等级认证C++一级真题
开发语言·c++·青少年编程·gesp·ccf
独断万古他化2 分钟前
【SpringBoot 日志】日志级别与配置:分类、使用及持久化全攻略
java·spring boot·后端·java-ee
SimonKing3 分钟前
基于Netty的TCP协议的Socket服务端
java·后端·程序员
予枫的编程笔记4 分钟前
Elasticsearch深度搜索与查询DSL实战:精准定位数据的核心技法
java·大数据·人工智能·elasticsearch·搜索引擎·全文检索
荒诞硬汉7 分钟前
面向对象(三)
java·开发语言
郝学胜-神的一滴8 分钟前
深入理解Linux中的Try锁机制
linux·服务器·开发语言·c++·程序人生
liliangcsdn9 分钟前
bash中awk如何切分输出
开发语言·bash
柒.梧.10 分钟前
Spring Boot集成JWT Token实现认证授权完整实践
java·spring boot·后端