java正则表达式 及应用场景爬虫,捕获分组非捕获分组
正则表达式
通常用于校验 比如说qq号 看输入的是否符合规则就可以用这个
public class regex {public static void main(String[] args) {//正则表达式判断qq号是否正确//规则 6位及20位以内 0不能再开头 必须全是数子String qq="1234567890";System.out.println(qq.matches("[1-9]\\d{5,19}"));//在正则表达式中 第一个表示不能以0开头所以写了1到9满足就行 第二个//写了\\d表示全是数字就行//第三写了5到19 因为规则是6位及20位以内.正则表达式开头不算算后面 后面是5到19位}
}
正则表达式还有一个作用在一段文本中查找满足要求的内容
注意一个[]大括号只匹配一个字符
下面是知识引入
所以总结\在java中有特殊含义. 口诀:两个\才表示一个
正则表达式校验多个字符
X表示任意字符
练习
public class test {public static void main(String[] args) {//验证手机号码//拿到一个正确的数从左到右一次去写//13103719499 13103123499 13103716212//第一部分手机号码以1开头//第二个数字根据常识是3到9//第三个往后的都是任意数字String regex1="1[3-9]\\d{9}";System.out.println("13103719499".matches(regex1));//trueSystem.out.println("13103123499".matches(regex1));//trueSystem.out.println("131037162121".matches(regex1));//falseSystem.out.println("_____________________");//座机号码//020-2324252 02122442 027-42423 0712-3242434//思路//以0开头//后面是任意数字两位或者三位//-是只能出现1次或0次 用?表示//号码不能以0开头 所以携程[1-9]//最后面是任意数字 号码总长是5到10位String regex2="0\\d{2,3}-?[1-9]\\d{4,9}";System.out.println("020-2324252".matches(regex2));System.out.println("02122442".matches(regex2));System.out.println("------------------------");//邮箱号码//3231231@qq.com zhangsan@dawd.cnn dled0011@163.com dlei12321@pci.com.cn//思路//第一部分//@左边可以是任意数字字母或者包含下划线 \w+ 这个加号表示出现一次或者多次//第二部分 @ 只能一次//第三 3.1 可以是任意数字字母或者不包含下划线[\\w&&[^_]{2,6} 出现2到6次//3.2 . \\. 第一个\是告诉java编译器的第二个\是告诉正则表达式的 因为 . 在正则表达式中有特殊含义 所以这里要转译两次//3.3 大小写字母都可以 出现 2 到3次 [a-zA-Z]{2,3}//我们把3.2 3.3 看成一组括起来让他们出现1 次或2次就组成了dlei12321@pci.com.cnString regex3="\\w+@[\\w&&[^_]]{2,6}(\\.[a-zA-Z]{2,3}){1,2}";System.out.println("3231231@qq.com".matches(regex3));System.out.println("dlei12321@pci.com.cn".matches(regex3));}}
注意"\\. 第一个\是告诉java编译器的第二个\是告诉正则表达式的 因为 . 在正则表达式中有特殊含义 所以这里要转译两次
练习2
public class test2 {public static void main(String[] args) {//要求以验证用户名是否满足要求//要求 大小写字母 数字下划线一共4到16位//dawd1231_dawdString regex1="\\w{4,16}";System.out.println("daw1231_dad".matches(regex1));//判断身份证号是否满足要求//简单要求 18位 前17位是任意数字 最后一位可以是大写或者小写xString regex2="[1-9]\\d{16}(\\d|x|X)";System.out.println("410922200206061619".matches(regex2));System.out.println("41092220020606169X".matches(regex2));System.out.println("______________________");//忽略大小写的方式String regex3="(?i)abc";System.out.println("abC".matches(regex3));//trueSystem.out.println("ABC".matches(regex3));//true//身份证号码严格校验//410922 2002 0606 1619//前六位 第一位不能是0 后面5位是任意数字 [1-9]\\d{5}//年份前两位现在只有18 19 20 (18|19|20)//年后半段任意数字 \\d{2}//月份01-09 10-12 (0[1-9]|1[0-2])//日期 01-09 10-19 20-29 30 31 (0[1-9]|[12]\\d|3[01])//前三位是任意数字 最后一位可以是大小写的X \\d{3}[\\dXx]//[01]表示可以是0 也可以是1String regex4="([1-9]\\d{5})(18|19|20)\\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\\d|3[01])\\d{3}[\\dXx]";System.out.println("41092220000606161X".matches(regex4));}
}
正则表达式小结
所以在java中书写\.就需要先转义\就是\\.而其他语言中就可以直接为\.
因为java编译的时候,会把两个\\看成一个\,而我们写\d,\d是特殊字符不需要转义
爬虫
String str = "Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11," +"因为这两个是长期支持的版本,下一个长期支持的版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台";//第一步获取正则表达式 括号里表示需要爬取的条件Pattern p = Pattern.compile("java\\d{0,2}");//用上面的爬取条件 获取文本匹配器对象//传入str是要查的文章内容//拿m读取str找到 找到符合p的子串Matcher m = p.matcher(str);//拿着文本匹配器从头开始读取找到满足规则的子串//如果没有返回false//底层记录字串的起始索引和结束索引加1//0,4 这个是boolean b = m.find();//根据find方法记录的索引进行字符串的截取//用到subString方法(起始索引,结束索引)包头不包尾 这就是为什么find最后要记录索引了//会把街区的小串返回String s = m.group();System.out.println(s);
普通写法 但是这种一次只能一个
String str = "Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是Java8和Java11," +"因为这两个是长期支持的版本,下一个长期支持的版本是Java17,相信在未来不久Java17也会逐渐登上历史舞台";//1.获取正则表达式Pattern p = Pattern.compile("Java\\d{0,2}");//2.获取文本匹配器的对象Matcher m = p.matcher(str);//3.利用循环获取while (m.find()) {//循环的意思是当find没有找完的情况下不会停止.如果没有满足条件的就会停止String s = m.group();//他会将find找的返回的索引返回字符串System.out.println(s);
循环写法
爬取网络上信息
public class internetPaQu {public static void main(String[] args) throws IOException {//爬取网络上的信息 比如是身份证号//创建一个url对象 可以理解为存网址的URL url=new URL("https://520zuowens.com/xiaoxue/1122109.html");//连接上这个网址URLConnection conn = url.openConnection();//创建一个对象读取网络中的信息BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream()));String line;//每次读一整行 只要没读完就不停下来while((line= br.readLine())!=null){System.out.println(line);}//br.close();}
}
接下来是待条件的读取 我只想要网址中身份证号
public class pachong2 {public static void main(String[] args) {String index = "手机号信息:13333333333 15555555555 18888888888" +"邮箱信息:12@qq.com s123@163.com sdjkaxh@pci.com.cn 400-100-3233" +"座机号码: 021-1584654 0215412111 0214511111"+"热线电话:400-618-9090,400-231-2344,4006182323";String regex = "(0\\d{2,6}-?\\d{5,20})|(\\w{1,30}@[0-9a-zA-Z]{2,20}(\\.[0-9a-zA-Z]{2,20}){1,2})" +"|(1[3-9]\\d{9})|(400-?\\d{3,9}-?\\d{3,9})|400-?[1-9]\\d{2}-?[1-9]\\d{3}";//这一步是获取正则表达式Pattern pattern = Pattern.compile(regex);
//这一步是把文本管理器读取index 根据prttern规则Matcher m = pattern.matcher(index);while(m.find()){System.out.println(m.group());}}
带条件的爬取
public static void main(String[] args) {String str ="Java自从95年问世以来,经历了很多版本,目前企业中用的最多的是JaVa8和Java11,"+"因为这两个是长期支持的版本,下一个长期支持的版本是JAva17,相信在未来不久Java17也会逐渐登上历史舞台";//需求1 爬取版本号为8 11 17的java文本 但只要java 不显示版本号//?可以理解为是java//=后边是java后面跟随的数据 但是获取的时候只要前半部分String regex1="((?i)java)(?=8|11|17)";//需求2 爬取版本号为8 11 17的java文本 需要加上后面的数字String regex2="((?i)java)(8|11|17)";//这种写法也可以还可以用占位的方法String regex21="((?i)java)(?:8|11|17)";//需求3 爬取除了 8 11 17String regex3="((?i)java)(?!8|11|17)";Pattern p = Pattern.compile(regex3);Matcher m = p.matcher(str);while(m.find()){System.out.println(m.group());}//s输出结果JaVa//Java//JAva//Java//(?i)忽略大小写}
}
在这里?相当于占位
贪婪爬取和非贪婪
贪婪爬取:爬取数据时尽可能多的爬取
贪婪爬取:爬取数据时尽可能少的爬取
String str ="Java自从95年问世以来,abbbbbbbbbbbbaaaaaaaaaaa"+"经历了很多版本,目前企业中用的最多的是JaVa8和Java11,"+"因为这两个是长期支持的版本,下一个长期支持的版本是JAva17,相信在未来不久Java17也会逐渐登上历史舞台";
ab+ 加表示一个或多个 那么可以是abbbbbbbbbbbb也可以是ab
那么贪婪爬取(java默认的爬取)则是abbbbbbbbbbbb
非贪婪ab
只写+和*表示贪婪匹配 +?和*?表示非贪婪
public static void main(String[] args) {String str ="Java自从95年问世以来,abbbbbbbbbbbbaaaaaaaaaaa"+"经历了很多版本,目前企业中用的最多的是JaVa8和Java11,"+"因为这两个是长期支持的版本,下一个长期支持的版本是JAva17,相信在未来不久Java17也会逐渐登上历史舞台";String regex1="ab+";Pattern p = Pattern.compile(regex1);Matcher m = p.matcher(str);while(m.find()){System.out.println(m.group());}}//打印结果abbbbbbbbbbbb
正则表达式在字符串方法中使用
public static void main(String[] args) {//有一段字符串 小诗诗dadwdsdasda12312321小丹丹adafsge1234小惠惠//要求1 把字符串中三个名字之间的字母用vs替代//要求2 把字符串中的三个名字切割出去String regex="小诗诗dadwdsdasda12312321小丹丹adafsge1234小惠惠";//第一个传入需要代替文本的正则表达式dadwdsdasda//第二个传入需要替换成的字符 vs//底层原理他也会创见文本解析器对象 然后读取符合条件的字符 用第二个代替String result = regex.replaceAll("[\\w&&[^_]]+", "vs");System.out.println(result);//小诗诗vs小丹丹vs小惠惠//2要求2 把字符串中的三个名字切割出去//传入需要切割字符的正则表达式即可 返回值为数组String[] s = regex.split("[\\w&&[^_]]+");for (int i = 0; i < s.length; i++) {System.out.println(s[i]);}
分组
捕获分组
捕获分组就是把这一组的数据捕获出来,再用一次。
- 需求1:判断一个字符串的开始字符和结束字符是否一致?只考虑一个字符
- 举例:a123a、b456b、17891、&abc&
- 需求2:判断一个字符串的开始部分和结束部分是否一致?可以有多个字符
- 举例:abc123abc、b456b、123789123、&!@abc&!@
- 需求3:判断一个字符串的开始部分和结束部分是否一致?开始部分内部每个字符也需要一致
- 举例:aaa123aaa、bbb456bbb、111789111、&&abc&&
public static void main(String[] args) {/* 需求1:判断一个字符串的开始字符和结束字符是否一致?只考虑一个字符* 举例:a123a、b456b、17891、&abc&*//* (.): 表示把首字符分成一组,可以出现1个任意字符.+: 表示任意字符至少出现1次\\1: 表示把第1组的内容再用1次*///拿到一个字符串 可以把他拆成3分看 然后写正则表达式 a 123 aString regex="(.).+\\1";System.out.println("a123a".matches(regex));//trueSystem.out.println("&abc&".matches(regex));//tSystem.out.println("a123b".matches(regex));//false/* * 需求2:判断一个字符串的开始部分和结束部分是否一致?可以有多个字符* 举例:abc123abc、b456b、123789123、&!@abc&!@*/String regex1="(.+).+\\1";//第一个(.+)表示 任意字符出现一次或者多次//第二个同上//\\1: 表示把第1组的内容再用1次 第一组就是第一个左括号的内容System.out.println("ab123ab".matches(regex1));//trueSystem.out.println("&aabc&a".matches(regex1));//tSystem.out.println("aa123ab".matches(regex1));//false/*需求3:判断一个字符串的开始部分和结束部分是否一致?开始部分内部每个字符也需要一致* 举例:aaa123aaa、bbb456bbb、111789111、&&abc&&*/String regex2="((.)\\2*).+\\1";//(.)表示任意字符 加上\\2表示首字符拿出来再次使用///* 表示把\\2重复0次或多次System.out.println("aaa123aaa".matches(regex2));//trueSystem.out.println("111789111".matches(regex2));//tSystem.out.println("aab123abb".matches(regex2));//false
在正则表达式内部使用分组:\\组号
在正则表达式外部使用分组:$组号
练习
public static void main(String[] args) {String str="我要学学编编编编程程程程程";//学学//编编编编//程程程程程//要做的是去点重复 用方法 replaceAll//写正则表达式//(.)表示任意字符出现0次或多次 \\1表示重复第一组 +表示出现1次或多次//第二个内容$1表示要替换的内容 为第一组第一个String s = str.replaceAll("(.)\\1+", "$1");System.out.println(s);}
非捕获分组
public static void main(String[] args) {/*非捕获分组:分组之后不需要再用本组数据,仅仅把数据括起来。身份证号码:41080119930228457x51080119760902230915040119810705387X430102197606046442*/// 身份证号的简易正则表达式String IDRegex = "[1-9]\\d{16}(?:\\d|X|x)";//非捕获分组 不占用组好
总结
相关文章:
java正则表达式 及应用场景爬虫,捕获分组非捕获分组
正则表达式 通常用于校验 比如说qq号 看输入的是否符合规则就可以用这个 public class regex {public static void main(String[] args) {//正则表达式判断qq号是否正确//规则 6位及20位以内 0不能再开头 必须全是数子String qq"1234567890";System.out.println(qq…...
基于 Debian 稳定分支发行版的Zephix 7 发布
Zephix 是一个基于 Debian 稳定版的实时 Linux 操作系统。它可以完全从可移动媒介上运行,而不触及用户系统磁盘上存储的任何文件。 Zephix 是一个基于 Debian 稳定版的实时 Linux 操作系统。它可以完全从可移动媒介上运行,而不触及用户系统磁盘上存储的…...
MBR20100CT-ASEMI肖特基MBR20100CT参数、规格、尺寸
编辑:ll MBR20100CT-ASEMI肖特基MBR20100CT参数、规格、尺寸 型号:MBR20100CT 品牌:ASEMI 芯片个数:2 封装:TO-220 恢复时间:>50ns 工作温度:-65C~175C 浪涌电流:…...
修炼k8s+flink+hdfs+dlink(五:安装dockers,cri-docker,harbor仓库)
一:安装docker。(所有服务器都要安装) 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persistent-data lvm2添加软件源信息 sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/cent…...
github: kex_exchange_identification: Connection closed by remote host
问题描述 (base) ➜ test git:(dev) git pull kex_exchange_identification: Connection closed by remote host Connection closed by 192.30.255.113 port 22 致命错误:无法读取远程仓库。解决方案 参照下边文档 https://docs.github.com/en/authentication/tr…...
AWS香港Web3方案日,防御云安全实践案例受关注
9月26日,AWS合作伙伴之Web3解决方案日在香港举办。来自人工智能、Web3等领域的创业公司、技术专家、风险投资商,就元宇宙时代未来发展进行了深入交流。现场展示了顶象防御云在金融与Web3领域的安全实践案例。 Web3为互联网体系架构的一个整体演进和升级&…...
QT 集成MQTT过程
1 编译库文件 Qt QtMqtt官方源码编译教程_“qtmqtt/qmqttglobal.h”: no such file or directory-CSDN博客 2 参考文献 Qt开发MQTT(一) 之Qt官方Qt MQTT-CSDN博客 QTMQTT 使用MQTT官方库_qt mqtt 官方库-CSDN博客...
GeoServer改造Springboot启动五(解决接口返回xml而不是json)
请求接口返回的是xml,而不是我们常用的json,问题呈现如下图 40 图 40请求接口返回XML 在RequestMapping注解上增加produces {MediaType.APPLICATION_JSON_UTF8_VALUE} 图 41增加produces...
在unity中给游戏物体一个标记
标记 方便识别! 标签(Tag) 引擎内部会对物体的标签建立了索引。通过标签查找物体,要比通过名字查找物体快得多。标签最多只能有 32个。前几个是常用标签,具有特定含义,例如玩家( Player)、主摄摄像机 (Mai…...
【黑马程序员】机器学习
(一)机器学习概述 一、机器学习算法分类 1、监督学习: (1)目标值是类别:分类问题 k-近邻算法、贝叶斯分类、决策树与随机森林、逻辑回归 (2)目标值是连续型的数据:回归…...
flutter card 使用示例
Card组件是卡片组件,内容可以由列表的widget组成,Card组件具有阴影圆角的功能。 常用属性: 属性 说明 margin 外边距elevation 阴影值的深度child 子元素 import package:flutter/material.dart;void main() > runApp(MyApp());class M…...
推荐算法:是否对用户判断能力有影响!!!
首先认识几种常见的推荐算法:推荐算法是一种在信息推送和个性化服务领域常用的技术。它通过分析用户的兴趣、行为和偏好,提供个性化的建议和推荐,以满足用户的需求。以下是对几种常见推荐算法的重新排版,并探讨了它们的作用、影响…...
【OpenVINO】OpenVINO C# API 常用 API 详解与演示
OpenVINO C# API 常用 API 详解与演示 1 安装OpenVINO C# API2 导入程序集 3 初始化OpenVINO 运行时内核4 加载并获取模型信息4.1 加载模型4.2 获取模型信息 5 编译模型并创建推理请求6 张量Tensor6.1 张量的获取与设置6.2 张量的信息获取与设置 7 加载推理数据7.1 获取输入张量…...
django无法导入第三方库
引子 有的人可能会很困惑,为什么自己在pip中安装了某个包,但是在django中死活无法导入。 在cmd中能够导入。 启动django,总是无法导入。 本文将会用一分钟解决你的困惑。 正文 那么本文以上述的第三方库dj_db_conn_pool为例,…...
7-k8s-helm管理
文章目录 一、为什么需要Helm二、Helm相关概念介绍三、Helm安装四、Helm指令介绍五、Helm创建tomcat六、Helm创建tomcat其他方式七、Helm创建redis 一、为什么需要Helm k8s部署:k8s平台部署的服务都是由资源文件描述组成,传统的k8s部署应用需要手工编排…...
零基础怎么样才能学好 Python?Python 入门必看
Python 目前可以用一个字来描述那就是 “火”,问题来了,这么火的语言零基础小白到底该怎样学习 Python? 首先,从基础开始学习,切勿毛躁。 刚开始学习 Python 的时候,我们可能会有些毛躁总觉得这些知识太简…...
1.X3-Warming up
/* 此程序使用 Boost Spirit 库来解析用户提供的逗号分隔的数字列表。它演示了如何使用 Spirit 来定义解析 器和执行解析操作,并且在用户输入时反复执行解析操作。用户可以提供一系列逗号分隔的数字,程序会检查它们 是否符合指定的解析规则。如果解析成功…...
【23真题】两电一邮之一,难度骤降!24可能回升!
今天分享的是23年电子科技大学858的信号与系统试题及解析。23成电858真题和22年相比,难度骤降!今年我预测可能会有反弹。22年成电858真题,是我做过的22真题中数一数二的难度!23年一般,但是题目也很好,真的很…...
持续集成部署-k8s-资源调度:DaemonSet
持续集成部署-k8s-资源调度:DaemonSet 1. DaemonSet 简介2. 部署 Fluent 日志收集程序1. DaemonSet 简介 在 Kubernetes 中,DaemonSet 是一种用于在集群中运行一个 Pod 副本的控制器对象。它可以保证在每个节点上都运行一个 Pod 副本,并且在节点加入或退出集群时自动地更新…...
RabbitMQ内容
RabbitMQ是一款开源的消息中间件,支持多个消息协议,包括AMQP、STOMP、MQTT等,它的主要功能是将分散的应用程序连接在一起,以便它们可以相互通信,从而构建可靠的、高效的分布式系统。 RabbitMQ的基础概念包括ÿ…...
搭建一个vscode+uni+vue的小程序项目
我们使用 vue2 创建工程作为示例,uni-app中Vue2版的组件库和插件也比较多,稳定、问题少,可以先参考下官方文档:uni-app官网 既然是使用vue脚手架,那肯定要全局安装vue/cli,已安装的可以跳过。 注意:Vue2创…...
处理ElementUI组件默认样式多次重复问题
问题截图: 解决办法: 在postcss.config.js文件里添加配置项: module.exports {plugins: {autoprefixer: {},cssnano: {} //添加这行代码}, } 处理结果: github issues: https://github.com/ElemeFE/element/is…...
配置hpa后,target显示<unknown>/50%
背景: 有两个服务,server 负责主要后端请求,bill 负责计量计费请求。服务都是使用 helm 部署。测试提了一个缺陷,说全部服务没有配置hpa。 解决一 按照之前的代码结构添加了hpa后,发现: ➜ kubectl get…...
用java实现抖音授权登录
要使用Java实现抖音授权登录,您需要使用抖音开放平台提供的API。以下是一个简单的Java代码示例,演示如何使用OAuth 2.0授权登录流程: 要使用Java实现抖音授权登录,您需要按照以下步骤进行操作: 创建抖音开放平台账号…...
Atlassian午餐会直播回顾:如何在Jira中进行项目时间与成本管理?
工时管理是项目过程管理的一个重要手段,通过科学记录项目组成员在项目执行过程中的任务完成和时间消耗情况,可以帮助管理者精准评估成员工作效率,实时掌握项目进展,并有效管控项目成本。 想要成为时间管理大师吗?在近…...
屏幕时代的数字化信息管理:从传统到纯软件的转变
随着数字化时代的推进,屏幕已经成为了企业和机构向外界传递信息的主要媒介。除了传统的手机和电脑屏幕,线下空间如办公楼、商场、店铺、医院、展厅等也需要利用屏幕来展示和发布各类信息。 管理这些屏幕和发布信息并不是一件容易的事情,特别是…...
Stm32_标准库_14_串口蓝牙模块_解决手机与蓝牙模块数据传输的不完整性
由手机向蓝牙模块传输时间信息,Stm32获取信息并将已存在信息修改为传入信息 测试代码: #include "stm32f10x.h" // Device header #include "Delay.h" #include "OLED.h" #include "Serial.h"uint16_t num…...
基于深度学习的“语义通信编解码技术”框架分类
目录 基于神经网络的语义提取基于神经网络的语义信源编码基于神经网络的语义信源信道联合编码基于神经网络的语义编码与数字调制联合设计参考文献 基于神经网络的语义提取 在现有的信源编码前端加上一个语义提取神经网络[53] ,如图所示。语义提取神经网络的输入是原…...
信钰证券:股票抵押是好还是坏?
股票典当是指将持有的股票作为质押品向银行或其他金融机构融资的行为。股票典当有其优势和下风,下面咱们将从多个角度来剖析股票典当是否好仍是坏。 一、优势 1.占用资金少 相比较于其他融资办法,股票典当所需求占用的资金较少,只需将股票作…...
媒体基础:打开多模态大模型的新思路
编者按:2023年是微软亚洲研究院建院25周年。25年来,微软亚洲研究院探索并实践了一种独特且有效的企业研究院的新模式,并以此为基础产出了诸多对微软公司和全球社会都有积极影响的创新成果。一直以来,微软亚洲研究院致力于创造具有…...
csdn 博客 wordpress/百度广告投放价格表
概述在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,我们还需要用到explain这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句有没有使用上了索引,有没有…...
wordpress 加入js/seo免费课程视频
此博文通过MATLAB APP Design实现对学生成绩的处理,具体的功能包括读取表格数据、添加学生数据、计算总成绩、成绩排序+以及表格的保存。 一、APP 界面设计展示 1. 在画布中拖入面板、表格和四个按钮,布局如下。将面板的title写为“学生成绩计算器”并居中,将四个按钮的t…...
有什么教做甜品的网站/广州信息流推广公司
2019独角兽企业重金招聘Python工程师标准>>> 江苏省钢铁行业联合重组正在酝酿中。重组目标设定为全省前4家钢铁企业占全省粗钢产能比例争取超过80%,前8家产能占比力争达到100%。这意味着,未来江苏省内的合规钢铁企业有望整合为8大企业集团&am…...
网站用户体验分析怎么做/网站关键词优化的步骤和过程
2023/4/6 QT练习QQ登录界面(完善) 作业 完善登录界面 点击登录按钮后,判断账号和密码是否一致,如果匹配失败,则弹出错误对话框,文本内容“账号密码不匹配,是否重新登录”,给定两个按…...
网站制作入门/怎么在百度做宣传广告
配置Windows Server 2003 的RADIUS Server的方法1、安装Windows 2003操作系统;2、添加角色(须插网线);3、添加组件->网络服务、证书服务;4、管理工具->域安全策略->帐户策略->密码策略;&#x…...
网站面试通知表格怎么做/360建站和凡科哪个好
Percona Server 刚在 2013 DeveloperWeek Best of Tech award 中赢得最具创新的 SQL 技术奖。 我们很骄傲的接受了这个奖项,该奖项的评选是由独立的评审小组选出,非常感谢你们对 Percona Server 的投票。 Percona 为 MySQL 数据库服务器进行了改进&#…...