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

相关推荐
程序员皮皮林1 分钟前
Dubbo 的 SPI 和 JDK 的 SPI 有什么区别?
java·开发语言·dubbo
啦啦啦啦啦zzzz1 分钟前
数据结构:哈夫曼编码
数据结构·c++·哈夫曼编码
小锋java12342 分钟前
10分钟学会Java16新特性record
java
是多巴胺不是尼古丁4 分钟前
java‘期末复习--多态
java·开发语言
瑞雪兆丰年兮7 分钟前
[从0开始学Java|第二十五天]项目阶段(综合练习&斗地主小游戏)
java·windows
吃好睡好便好8 分钟前
近期读书体会
学习·生活
ourenjiang8 分钟前
【学习设计模式】原型模式
学习·设计模式·原型模式
ChillCoding16 分钟前
更新中:C++ STL库,查找排序(基础算法),数据结构,数学算法,竞赛相关基础
数据结构·c++·算法
abcy07121317 分钟前
sqlalchemy 原生sql判断条件是否为空,为空则跳过
开发语言·python
段一凡-华北理工大学18 分钟前
工业领域的Hadoop架构学习~系列文章18:制造业Hadoop应用实践 - 从数据到智能的完整闭环
大数据·人工智能·hadoop·分布式·学习·架构·高炉炼铁