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

风景区网站建设项目建设可行性建筑焊工证查询网站官方网

风景区网站建设项目建设可行性,建筑焊工证查询网站官方网,网页设计的基本原则是什么,三个年轻人做电影网站800万(以下内容全部来自上述课程) 1.正则表达式(regex) 可以校验字符串是否满足一定的规则,并用来校验数据格式的合法性。 1.作用 校验字符串是否满足规则在一段文本中查找满足要求的内容 2.内容定义 ps:一…

在这里插入图片描述
(以下内容全部来自上述课程)
在这里插入图片描述

1.正则表达式(regex)

可以校验字符串是否满足一定的规则,并用来校验数据格式的合法性。

1.作用

  1. 校验字符串是否满足规则
  2. 在一段文本中查找满足要求的内容

2.内容定义

请添加图片描述
ps:一个[]只能匹配一个字符。
\:转义字符,改变后面那个字符原本的含义
\:前面的\是一个转义字符,改变了后面的\原本的含义,把他变成成一个普普通通的\而已。
简单来记:两个\表示一个
请添加图片描述
API文档:Pattern会有正则表达式的解释,所以不需要去背。
插件:any-rule:右键可以插入想要的正则表达式:可以删去首尾的^和$符号,再把一个\加为两个\。
补充:(?i)忽略后面字母的大小写
请添加图片描述

2.爬虫

正则表达式的第二个作用:在一段文本中查找满足要求的内容。
分为:本地爬虫和网络爬虫。
Pattern:表示正则表达式。
Matcher:文本匹配器,作用按照正则表达式的规则去读取字符串,从头开始读取。在大串中去找符合匹配规则的子串。

1.本地爬虫

有如下文本,请按要求爬取数据。
Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11,
因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台
要求:找出里面所有的JavaXX

package RegexDemo;import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Demo1 {/*有如下文本,请按要求爬取数据。Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11,因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台要求:找出里面所有的JavaXX*/public static void main(String[] args) {String str = "Java自从95年问世以来,经历了很多版本," +"目前企业中用的最多的是Java8和Java11," +"因为这两个是长期支持版本,下一个长期支持版本是Java17," +"相信在未来不久Java17也会逐渐登上历史舞台";//method1(str);//1.获取正则表达式对象Pattern pattern = Pattern.compile("Java\\d{0,2}");//2.获取匹配器对象//拿着matcher对象去读取strMatcher matcher = pattern.matcher(str);//3.开始读取while(matcher.find()) {String s = matcher.group();System.out.println(s);}}private static void method1(String str) {//获取正则表达式对象Pattern pattern = Pattern.compile("Java\\d{0,2}");//获取匹配器对象//m:文本匹配器的对象//str:大串//p:规则//m要在str中找到符合p规则的小串Matcher m = pattern.matcher(str);//拿着文本匹配器从头开始读取,寻找是否有满足规则的子串//如果没有,返回false//如果有,返回true。在底层记录子串的起始索引和结束索引+1//0,4boolean b = m.find();//方法底层会根据find方法记录的索引,从大串中截取子串//subString(起始索引,结尾索引);包含起始索引,不包含结尾索引//0,4 [0,4) 不包含4索引//会把截取的子串返回String s1 = m.group();System.out.println(s1);//继续寻找b = m.find();String s2 = m.group();System.out.println(s2);}
}

2.网络爬虫(了解)

请添加图片描述

3.带条件的爬取

有如下文本,请按要求爬取数据。
Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11,
因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台
需求1:爬取版本号为8,11,17的Java文本,但是只要Java,不显示版本号。
需求2:爬取版本号为8,11,17的Java文本。正确爬取结果为:Java8,Java11,Java17,Java17
需求3:爬取除了版本号为8,11,17的Java文本。

package RegexDemo;import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Demo2 {/*有如下文本,请按要求爬取数据。Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11,因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台需求1:爬取版本号为8,11,17的Java文本,但是只要Java,不显示版本号。需求2:爬取版本号为8,11,17的Java文本。正确爬取结果为:Java8,Java11,Java17,Java17需求3:爬取除了版本号为8,11,17的Java文本。*/public static void main(String[] args) {String str = "Java自从95年问世以来,经历了很多版本," +"目前企业中用的最多的是Java8和Java11," +"因为这两个是长期支持版本,下一个长期支持版本是Java17," +"相信在未来不久Java17也会逐渐登上历史舞台";//1.定义正则表达式//?理解为前面的数据Java//=表示在Java后面要跟随的数据//()但是获取的时候,只获取前半部分//需求1:String regex1 = "Java(?=8|11|17)";//需求2:String regex2 = "Java(8|11|17)";String regex3 = "Java(?:8|11|17)";//需求3:String regex4 = "Java(?!8|11|17)";Pattern pattern = Pattern.compile(regex4);Matcher matcher = pattern.matcher(str);while(matcher.find()) {System.out.println(matcher.group());}}
}

4.贪婪爬取和非贪婪爬取

有如下文本,请按要求爬取数据。
Java自从95年问世以来,abbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaa,经历了很多版本,目前企业中用的最多的是Java8和Java11,
因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台
需求1:按照ab+的方法爬取ab,b尽可能多获取 --------------贪婪爬取
需求2:按照ab+的方法爬取ab,b尽可能少获取 --------------非贪婪爬取

Java当中,默认的就是贪婪爬取
如果我们在数量词+ *的后面加上问号,就是非贪婪爬取。

package RegexDemo;import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Demo3 {/*有如下文本,请按要求爬取数据。Java自从95年问世以来,abbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaa,经历了很多版本,目前企业中用的最多的是Java8和Java11,因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台需求1:按照ab+的方法爬取ab,b尽可能多获取  --------------**贪婪爬取**需求2:按照ab+的方法爬取ab,b尽可能少获取  --------------**非贪婪爬取***/public static void main(String[] args) {String str = "Java自从95年问世以来,abbbbbbbbbbbbbbbbbbbbbaaaaaaaaaaaaaa, " +"经历了很多版本,目前企业中用的最多的是Java8和Java11, " +"因为这两个是长期支持版本,下一个长期支持版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台";String regex1 = "ab+";String regex2 = "ab+?";Pattern pattern = Pattern.compile(regex1);Matcher matcher = pattern.matcher(str);while(matcher.find()) {System.out.println(matcher.group());}}
}

3.正则表达式在字符串中的使用

请添加图片描述

4.分组

分组就是个小括号。
请添加图片描述

每组是有组号的,也就是序号。

  • 从1开始,连续不间断。
  • 以左括号为基准,最左边的是第一组,其次为第二组。

1.捕获分组

捕获分组就是把这一组的数据捕获出来,再用一次。
后续还需要使用本组的数据:

  • 正则内部使用:\组号
  • 正则外部使用:$组号
    请添加图片描述
//需求1:
String regex1 = "(.).+\\1";
//需求2:
String regex2 = " (.+).+\\1";
//需求3:
//(.):把首字母看成一组
//\\2:把首字母拿出来再次使用
//*:作用于\\2,表示后面重复的内容出现0次或多次
String regex3 ="((.)\\2*).+\\1";

将字符串:我要学学编编编编程程程程程程
替换为:我要学编程

package RegexDemo;public class Demo4 {/*将字符串:我要学学编编编编程程程程程程替换为:我要学编程*/public static void main(String[] args) {String str = "我要学学编编编编程程程程程程";//(.)表示任意字符//\\1表示第一字符再次出现//+至少一次//$1表示把正则表达式中的第一个分组的内容,再拿出来用String s = str.replaceAll("(.)\\1+", "$1");System.out.println(s);}
}

2.非捕获分组

分组后不需要再用本组数据,仅仅是把数据括起来。
请添加图片描述

http://www.yayakq.cn/news/759377/

相关文章:

  • 受欢迎的佛山网站制作沈阳市城市建设网站
  • 网站 制作布局网站建设
  • 郑州哪里做网站邯郸经济技术开发区
  • seo网站关键词优化快速官网什么网址可以免费
  • 旅游网站网页布局网站开发实现的功能
  • 福建网站优化建设做网站一定需要icp么
  • 网站制作费用属于广告费吗上海青浦做网站公司
  • 重庆做营销网站如何建设企业电子商务网站
  • 哪个网站的域名到期直接注册表网站建设客户定位
  • 云服务器如何搭建网站网站没内容
  • 金泉网做网站电话创建公司多少钱
  • wordpress一键关注网站seo优化价格
  • 做视频的软件模板下载网站有哪些内容营销型网站建设托管
  • 公司建网站怎么弄电商平面ui设计是什么
  • html动漫网站模板下载wordpress 分享代码
  • 手机版网站模板 免费怎么做二十八页美食网站
  • 热点新闻事件及评论成都网站关键词优化
  • 安徽六安旅游必去十大景点天津百度快速优化排名
  • wordpress建站心得工程资质
  • 查询网站开发网站开发有哪些软件有哪些
  • 网站建设需要多少费用手表网站 云
  • 建网站选域名网站建设价格方案
  • 中国摄影网站十大排名国际新闻最新消息10条
  • wordpress搬站江津哪里找做网站的
  • 乐云网站建设南宁企业免费建站
  • 衡水网站建设优化排名江西公共资源交易网
  • 什么网站可以做调察问卷怎样去推广自己的网店
  • 商业网站建设定位wordpress可选模式主题
  • 网约车平台app网站建设阿里巴巴官网首页下载
  • 免费网络在线打电话企业网站优化包括哪三个层面