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

相关推荐
胚芽鞘68144 分钟前
关于java项目中maven的理解
java·数据库·maven
nbsaas-boot2 小时前
Java 正则表达式白皮书:语法详解、工程实践与常用表达式库
开发语言·python·mysql
岁忧2 小时前
(LeetCode 面试经典 150 题 ) 11. 盛最多水的容器 (贪心+双指针)
java·c++·算法·leetcode·面试·go
chao_7892 小时前
二分查找篇——搜索旋转排序数组【LeetCode】两次二分查找
开发语言·数据结构·python·算法·leetcode
CJi0NG2 小时前
【自用】JavaSE--算法、正则表达式、异常
java
数字芯片实验室2 小时前
分享一个可以学习正则表达式的网址:Pythex.org
学习·正则表达式
陈洪奇2 小时前
注册中心学习笔记整理
笔记·学习
风无雨2 小时前
GO 启动 简单服务
开发语言·后端·golang
Hellyc2 小时前
用户查询优惠券之缓存击穿
java·redis·缓存
光影少年2 小时前
从前端转go开发的学习路线
前端·学习·golang