当前位置: 首页 > article >正文

第十一节:第一部分:正则表达式:应用案例、爬取信息、搜索替换

正则表达式介绍

正则表达式

String提供的正则表达式的方法的书写规则

匹配正则表达式的方法

正则表达式总结

正则表达式总结

正则表达式作用:

正则表达式作用

作用三:搜索替换

在这里插入图片描述

案例分析及代码(图片解析)

案例分析及代码

代码:

代码一:校验手机号和邮箱格式是否正确

package com.itheima.day15_regex;import java.util.Scanner;public class RegexTest3 {public static void main(String[] args) {//checkPhone();checkEmail();}//检查手机号public static void checkPhone() {while (true) {System.out.println("请您输入您的电话号码(手机|座机):");Scanner sc = new Scanner(System.in);String phone = sc.nextLine();//18676769999 010-3424242424 0104644535//  手机号         座机号         座机号if (phone.matches("(1[3-9]\\d{9}|(0\\d{2,7}-?[1-9]\\d{4,19}))")){System.out.println("您输入的号码格式正确~~~");break;}else {System.out.println("您输入的号码格式不正确~~~");}}}//检查邮箱public static void checkEmail() {while (true) {System.out.println("请您输入您的邮箱:");Scanner sc = new Scanner(System.in);String email = sc.nextLine();/*dlei0009@163.com25143242@qq.comitheima@itcast.comitheima@itcast.cn*/if (email.matches("\\w{2,}@(\\w{2,20}\\.\\w{2,10}){1,2}")){System.out.println("您输入的邮箱格式正确~~~");break;}else {System.out.println("您输入的邮箱格式不正确~~~");}}}}

结果1

代码二:使用正则表达式做搜索替换,内容分割。

package com.itheima.day15_regex;import java.util.Arrays;//目标:掌握使用正则表达式做搜索替换,内容分割。
public class RegexTest4 {public static void main(String[] args) {//1、public String replaceAll(String regex,String newstr):按照正则表达式匹配的内容进行替换// 需求1:请把 古力娜扎ai8888迪丽热巴999aa5566马尔扎哈fbbfsfs42425卡尔扎巴,中间的非中文字符替换成“-"String str1 ="古力娜扎ai8888迪丽热巴999aa5566马尔扎哈fbbfsfs42425卡尔扎巴";System.out.println(str1.replaceAll("\\w+", "-"));//需求2(拓展):某语音系统,收到一个口吃的人说的"我我我喜欢编编编编编编编编编编编编程程程!",需要优化成"我喜欢编程!"。/*(.)一组:.匹配任意字符的。\\1:为这个组声明一个组号:1号+:声明必须是重复的字$1:可以取到第1组代表的那个重复的字* */String str2 ="我我我喜欢编编编编编编编编编编编编程程程!";System.out.println(str2.replaceAll("(.)\\1+","$1"));// 2、public string[]split(String regex):按照正则表达式匹配的内容进行分割字符串,反回一个字符串数组。// 需求1:请把古力娜扎ai8888迪丽热巴999aa5566马尔扎哈fbbfsfs42425卡尔扎巴,中的人名获取出来。String str3 = "古力娜扎ai8888迪丽热巴999aa5566马尔扎哈fbbfsfs42425卡尔扎巴";String[] names =str3.split("\\w+");System.out.println(Arrays.toString(names));}
}

结果2

http://www.lryc.cn/news/2393461.html

相关文章:

  • 跟我学c++中级篇——动态库的资源处理
  • 新能源集群划分+电压调节!基于分布式能源集群划分的电压调节策略!
  • 端午安康 | 以匠心,致长远
  • 漫画Android:事件分发的过程是怎样的?
  • 2022 RoboCom 世界机器人开发者大赛-本科组(省赛)解题报告 | 珂学家
  • 什么是MCP技术,跟http技术有什么区别
  • 如何用ChatGPT提升学术长文质量
  • BKP(备份寄存器)和 RTC(实时时钟)
  • springboot配置cors拦截器与cors解释
  • 【EdgeYOLO】《EdgeYOLO: An Edge-Real-Time Object Detector》
  • Python打卡 DAY 38
  • 调试技巧总结
  • ubuntu安装blender并配置应用程序图标
  • 基于LBS的上门代厨APP开发全流程解析
  • Redisson学习专栏(三):高级特性与实战(Spring/Spring Boot 集成,响应式编程,分布式服务,性能优化)
  • 华为欧拉系统中部署FTP服务与Filestash应用:实现高效文件管理和共享
  • 基于Docker和YARN的大数据环境部署实践最新版
  • 【大模型】Bert
  • 《Go小技巧易错点100例》第三十四篇
  • vue3+element-plus el-date-picker日期、年份筛选设置本周、本月、近3年等快捷筛选
  • Vue 技术文档
  • 3 分钟学会使用 Puppeteer 将 HTML 转 PDF
  • 速通《Sklearn 与 TensorFlow 机器学习实用指南》
  • Ubuntu 下搭建ESP32 ESP-IDF开发环境,并在windows下用VSCode通过SSH登录Ubuntu开发ESP32应用
  • [FreeRTOS- 野火] - - - 临界段
  • 【洛谷P9303题解】AC代码- [CCC 2023 J5] CCC Word Hunt
  • NodeMediaEdge接入NodeMediaServer
  • 【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
  • WebSocket指数避让与重连机制
  • DrissionPage WebPage模式:动态交互与高效爬取的完美平衡术