- (AC)Playlist
题目描述Youaregivenaplaylistofaradiostationsinceitsestablishment.Theplaylisthasatotalofnsongs.Whatisthelongestsequenceofsuccessivesongswhereeachsongisunique?输入Thefirstinputlinecontainsanintegern(1≤n≤2*105
- 第六次打卡(11月18日)
徐恩峰
(1)We'dbeentalkingaboutthebasicservicefacilitiesthat......economyneedsthefunction:roads,bridges,railsystems,watersupplies......andso......(2)Butlately,thelocalandstategovernmenthavestartedtoconsideran
- 同事的粗鲁行为会影响你的睡眠,也会影响伴侣的睡眠
wumingzhi111
同事的粗鲁行为会影响你的睡眠,也会影响伴侣的睡眠无礼。讽刺的评论。的语言。在会议中打断或议论某人。像这样的职场无礼行为正变得越来越普遍,波特兰州立大学(PortlandStateUniversity)和伊利诺伊大学(UniversityofIllinois)的研究人员发现,这种行为不仅可能对员工的睡眠造成负面影响,还可能对伴侣的睡眠造成负面影响。最近发表在《职业健康科学》(Occupational
- iostat的使用说明
一心092
监控linuxlinux运维性能优化
iostat的使用说明1.iostat说明iostat是一个系统性能监控工具,主要用于监控CPU使用情况和磁盘I/O(输入/输出)性能。它是sysstat工具包的一部分,广泛用于Linux系统中,特别适合用于分析磁盘性能瓶颈、排查系统慢速问题、优化服务器性能等场景。2.iostat使用查看CPU和磁盘I/O的总体情况#iostatLinux4.18.0-348.el8.x86_64(u1azabb
- Linux操作系统-性能优化
月堂
linux服务器运维
1.基础工具top/htoptop#实时查看CPU、内存、进程htop#增强版(支持鼠标操作)关键指标:%CPU(CPU占用)、%MEM(内存占用)、LOADAVERAGE(系统负载)。vmstatvmstat1#每秒输出一次系统状态关键列:r:等待CPU的进程数(>CPU核数表示过载)。si/so:Swap交换频率(频繁交换说明内存不足)。iostatiostat-xz1#查看磁盘I/O关键指标
- Linux下获取指定时间内某个进程的平均CPU使用率
崔杰城
linuxlinux运维服务器
一、引言通过pidstat工具可以测量某个进程在两个时间点之间的平均CPU利用率。二、pidstat工具的安装pidstat属于sysstat套件的一部分。以Ubuntu系统为例,执行下面命令下载安装sysstat套件:apt-getinstallsysstat执行完后,终端执行pidstat命令,有如下输出,说明pidstat安装成功了:三、pidstat工具的使用以下命令表示:每30秒获取特定
- Linux系统卡顿的排查方法和过程全解析
大模型大数据攻城狮
linux运维优化内存磁盘优化tcpdump磁盘io硬件排查
目录1.卡顿的“罪魁祸首”:从现象到本质的追凶之旅2.CPU:系统的大脑是不是被“榨干”了?用top和htop快速定位实例:MySQL进程“吃”CPU进阶工具:perf和sar3.内存:系统是不是“记性不好”?用free和vmstat摸清内存家底实例:内存泄漏的“隐形杀手”优化内存的招数4.磁盘IO:数据流动的“交通堵塞”用iotop和iostat抓“流量大户”实例:日志文件“吞噬”磁盘优化IO的
- Flink 状态管理设计详解:StateBackend、State、RocksDB和Namespace
lifallen
Flinkflink大数据数据库javaapache分布式
为什么需要StateBackend?——职责分离原则我们可以用一个银行的例子来类比:State(如ValueState,ListState)就像是你的银行卡。AbstractKeyedStateBackend就像是银行的整个后台系统(包括总服务器、数据库、风控系统、会计系统等)。你不能直接用一张塑料卡片去操作你的钱,你需要把卡片插入ATM机或交给柜员,由他们背后的银行系统来完成真正的存取款、转账等
- PHP防范SQL注入攻击的5种高效方法与实践
独立开发者阿乐
综合性原创phpsql开发语言攻击PDOMySQLiSQL注入
文章目录PHP防止SQL注入攻击的全面指南一、SQL注入攻击概述1.1什么是SQL注入1.2SQL注入的危害1.3常见SQL注入示例二、PHP防御SQL注入的核心策略2.1使用预处理语句(PreparedStatements)PDO预处理示例MySQLi预处理示例2.2输入验证与过滤2.3使用ORM框架LaravelEloquent示例2.4最小权限原则三、进阶防御策略3.1使用Web应用防火墙(
- android.support.v7.widget.RecyclerView$SavedState cannot be cast to android.widget.AbsListView$Sa...
Mis丶H
全部错误信息:java.lang.RuntimeException:UnabletostartactivityComponentInfo{com.enhance.greapp/com.kaomanfen.enhance.gre3k.activity.QuestionWordActivity}:java.lang.ClassCastException:android.support.v7.widge
- 关于COVID-19中的细胞因子风暴
wxgzh_在学习中思考
JohnB.Moore,CarlH.June,Science(2020)这是2020年4月17日发表在Science上的一篇观点/展望性文章。作者是来自美国的JohnB.Moore和CarlH.June。关于作者:CarlH.June,MD宾夕法尼亚大学佩雷尔曼医学院。B.S.(Biology),UnitedStatesNavalAcademy,1975M.D.(Medicine),BaylorC
- C#学习笔记
说笑谈古松
C#c#
这是我以前的学习笔记,使用word写的,缩进应该有问题。3.1变量usingsystem;在这里定义的变量就可以在整个程序中使用;inta;publicclassmain{在这里定义的变量就可以在整个类中使用;intb;publicvoidstaticMain(){在这里定义的变量就可以在整个方法中使用;intc;}}也可以用static实现!3.1常量静态常量:publicconstintMAX
- MyBatis动态SQL全解析:五大核心标签实战指南
MyBatis动态SQL全解析:五大核心标签实战指南一、动态SQL的价值:告别硬编码时代传统SQL拼接的痛点//传统方式需要手动拼接SQL字符串StringBuildersql=newStringBuilder("SELECT*FROMordersWHERE1=1");if(status!=null){sql.append("ANDstatus='").append(status).append(
- 基于按键开源MultiButton框架深入理解代码框架(三)(指针的深入理解与应用)
慈悲不渡自绝的人
开源项目解读c语言arm开发单片机算法stm3251单片机
文章目录3、分析代码3.3按键的插入3.4按键的删除3.5继续分析状态机核心理解4、写在最后的总结5、思想感悟篇6、慈悲不渡自绝人3、分析代码3.3按键的插入//ButtonhandlelistheadstaticButton*head_handle=NULL;/***@briefStartthebuttonwork,addthehandleintoworklist*@paramhandle:ta
- Pod调度、嵌入式脚本、Pod标签管理
yanjiaweiya
云原生kubernetes容器
多容器Pod案例3排错[root@master~]#vimweb2.yaml---kind:PodapiVersion:v1metadata:name:web2namespace:defaultspec:containers:-name:nginximage:myos:nginx-name:apacheimage:myos:httpdstatus:{}[root@master~]#kubectla
- 【JDBC痛点终结者】MyBatis如何优雅解决传统数据库操作的七大难题
码农技术栈
MyBatis数据库mybatistomcatjava开发语言后端性能优化
你是否曾在JDBC的ResultSet和PreparedStatement的海洋中迷失方向?是否被无数重复的模板代码折磨得精疲力尽?本文将带你揭秘MyBatis如何优雅解决JDBC的痛点,让你告别繁琐,拥抱高效!一、先看一个真实场景:JDBCvsMyBatis1.JDBC实现用户查询//JDBC查询用户publicUserfindUserById(intid)throwsSQLException{
- 多元线性回归 python_Python中的多元线性回归
多元线性回归pythonLinearregressionisastandardstatisticaldataanalysistechnique.Weuselinearregressiontodeterminethedirectrelationshipbetweenadependentvariableandoneormoreindependentvariables.Thedependentvaria
- Mybatis源码,从配置到 mappedStatement/mapper.xml 是如何被解析的?
祁娥安
Javajavamybatis
今天跟大家分享下Mybatis源码,从配置到mappedStatement/mapper.xml解析的知识。1从MybatisAutoConfiguration说开去,mapper文件是怎么扫描的?Ext1:本文源码解析基于mybatis-spring-boot-starter2.1.1,即mybatis3.5.3版本。Ext2:本文主要是对源码的讲解,着重点会是在源码上。我们知道配置SqlSes
- std::future、std::promise、std::async 和 std::packaged_task涉及到的异常存储机制
醇醛酸醚酮酯
C++并发编程c++
在C++的并发编程中,std::future、std::promise、std::async和std::packaged_task共同构成了异常安全的异步操作框架。以下是它们处理异常的核心机制及相互关系:一、异常存储的核心机制1.共享状态(SharedState)中央存储:所有异常和结果都存储在future关联的共享状态中。线程安全:状态的读写自动同步,无需额外锁。2.异常传递路径操作抛出异常──
- MyBatis初识:为什么选择它?
双力臂404
mybatis基础mybatis开发语言
前言在Java持久层框架的江湖中,MyBatis像一位特立独行的侠客——它既不像JDBC那样需要开发者赤手空拳打天下,也不似Hibernate般用ORM大法将SQL完全封装。这种"中间派"的定位,恰恰解决了开发者在两个极端之间的长期困扰。JDBC的"三座大山"//典型JDBC代码片段Connectionconn=null;PreparedStatementps=null;ResultSetrs=n
- java 线程状态 和 线程池状态
@ chen
Java基础java
在Java中,线程状态(ThreadState)和线程池状态(ThreadPoolState)是两个不同维度的概念。下面分别详细说明:一、Java线程状态(Thread.State)Java线程状态定义在java.lang.Thread.State枚举中,共6种状态:状态说明NEW线程已创建但未启动(未调用start()方法)。RUNNABLE线程正在运行或等待操作系统资源(如CPU)。包含两个子
- android led 框架,详解Android应用层制作LED指示灯
详解Android应用层制作LED指示灯在Java应用层修改LED指示灯的颜色,这个花了我半天时间,才实现该功能!publicclassLEDActivityextendsActivityimplementsView.OnClickListener{privatestaticfinalStringTAG="LED";ButtonmLedTest;intmLedStatus=0;privatefin
- 通过去抖动机制或延迟确认,解决交流接触器时间差导致的状态波动问题
zhxup606
C#实战教程前端数据库c#
从你的描述和代码来看,需求如下:Read方法持续读取硬件状态:Read方法通过循环不断读取AUXRealTimeState1.TestPowerStatus,并在状态为true时设置GlobalCache.TestPowerReadStatus=true。每次循环有100ms的延迟(Thread.Sleep(100)),表示这是一个轮询机制,用于监控硬件状态。PSRead依赖状态:只有当Globa
- Statement 和 PreparedStatement 详解
风起携月归
javaJavaEESQLpython数据库开发语言
Statement和PreparedStatement详解文章目录Statement和PreparedStatement详解一、定义二、Statement三、PreparedStatement四、Statement和PreparedStatement的区别一、定义在Java数据库编程中,Statement和PreparedStatement是两种用于执行SQL语句的接口理解:在Java语句里执行S
- JDBC中PreparedStatement对象详解(认真看完包学会)
码力无边-OEC
java后端
JDBC(JavaDatabaseConnectivity)是Java用于访问数据库的标准API。PreparedStatement是JDBC中用于执行预编译的SQL语句的接口,能够有效地防止SQL注入,并提高性能。以下是关于PreparedStatement的详细讲解:1.什么是PreparedStatementPreparedStatement是一种SQL语句的预编译版本。与Statement
- PreparedStatement详解
empti_
JDBCjava数据库
PreparedStatement详解一、PreparedStatement概述PreparedStatement是JDBC中用于执行预编译SQL语句的接口,它继承自Statement接口,提供了更安全、更高效的SQL执行方式。主要特点:预编译:SQL语句被预编译并存储在PreparedStatement对象中参数化查询:使用占位符(?)代替直接拼接SQL值防止SQL注入:自动处理特殊字符,提高安
- MyBatis源码深度解析:核心机制与实战应用指南
言宇程序
mybatisMyBatis源码深度解析核心
MyBatis源码深度解析:核心机制与实战应用指南作为Java开发者,深入理解MyBatis源码能显著提升复杂场景下的技术决策能力。面对框架底层庞杂的模块设计,如何快速建立系统化的源码认知体系?本文将从实际应用场景出发,拆解核心源码实现逻辑。一、源码阅读的价值与技术突破点配置陷阱规避通过分析XML配置加载流程,掌握MappedStatement注册机制与typeAliases的优先级陷阱性能调优依
- nt!MiFlushSectionInternal函数分析从nt!IoSynchronousPageWrite函数到Ntfs!NtfsFsdWrite函数
sitelist
nt4源代码分析MiFlushSectionNtfsFsdWrite
第一部分:while(TRUE){KeClearEvent(&IoEvent);Status=IoSynchronousPageWrite(FilePointer,Mdl,(PLARGE_INTEGER)&StartingOffset,&IoEvent,IoStatus);1:kd>pnt!MiFlushSectionInternal+0x6f6:80a72410e8c74bfbffcallnt!
- 在 Azure 中将基础结构自动化工具与虚拟机配合使用
zangdalei
Market
若要以一致的方式大规模创建和管理Azure虚拟机(VM),通常需要某种形式的自动化。可以通过许多工具和解决方案来自动完成整个Azure基础结构部署和管理生命周期。本文介绍了一些可以在Azure中使用的基础结构自动化工具。这些工具通常适合以下某个方法:自动执行VM的配置工具包括Chef。特定于VM自定义的工具包括适用于LinuxVM的cloud-init、PowerShellDesiredState
- 系统的性能优化
王富贵QAQ
性能优化linux运维
核心原则监控先行:先分析瓶颈,再针对性优化逐步调整:避免一次性修改过多参数。稳定性优先:优化后需充分测试。性能监控工具top/htop:实时查看cpu占用、MEM占用、LOADAVERAGE系统负载vmstat:r:等待CPU的进程数>CPU表示过载si/so:Swap交换频率,频繁交换说明内存不足iostat查看磁盘I/O性能netstat/ss查看tcp连接数sar-u13查看CPU使用率,每
- java数字签名三种方式
知了ing
javajdk
以下3钟数字签名都是基于jdk7的
1,RSA
String password="test";
// 1.初始化密钥
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(51
- Hibernate学习笔记
caoyong
Hibernate
1>、Hibernate是数据访问层框架,是一个ORM(Object Relation Mapping)框架,作者为:Gavin King
2>、搭建Hibernate的开发环境
a>、添加jar包:
aa>、hibernatte开发包中/lib/required/所
- 设计模式之装饰器模式Decorator(结构型)
漂泊一剑客
Decorator
1. 概述
若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。
- 读取磁盘文件txt,并输入String
一炮送你回车库
String
public static void main(String[] args) throws IOException {
String fileContent = readFileContent("d:/aaa.txt");
System.out.println(fileContent);
- js三级联动下拉框
3213213333332132
三级联动
//三级联动
省/直辖市<select id="province"></select>
市/省直辖<select id="city"></select>
县/区 <select id="area"></select>
- erlang之parse_transform编译选项的应用
616050468
parse_transform游戏服务器属性同步abstract_code
最近使用erlang重构了游戏服务器的所有代码,之前看过C++/lua写的服务器引擎代码,引擎实现了玩家属性自动同步给前端和增量更新玩家数据到数据库的功能,这也是现在很多游戏服务器的优化方向,在引擎层面去解决数据同步和数据持久化,数据发生变化了业务层不需要关心怎么去同步给前端。由于游戏过程中玩家每个业务中玩家数据更改的量其实是很少
- JAVA JSON的解析
darkranger
java
// {
// “Total”:“条数”,
// Code: 1,
//
// “PaymentItems”:[
// {
// “PaymentItemID”:”支款单ID”,
// “PaymentCode”:”支款单编号”,
// “PaymentTime”:”支款日期”,
// ”ContractNo”:”合同号”,
//
- POJ-1273-Drainage Ditches
aijuans
ACM_POJ
POJ-1273-Drainage Ditches
http://poj.org/problem?id=1273
基本的最大流,按LRJ的白书写的
#include<iostream>
#include<cstring>
#include<queue>
using namespace std;
#define INF 0x7fffffff
int ma
- 工作流Activiti5表的命名及含义
atongyeye
工作流Activiti
activiti5 - http://activiti.org/designer/update在线插件安装
activiti5一共23张表
Activiti的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。 用途也和服务的API对应。
ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
A
- android的广播机制和广播的简单使用
百合不是茶
android广播机制广播的注册
Android广播机制简介 在Android中,有一些操作完成以后,会发送广播,比如说发出一条短信,或打出一个电话,如果某个程序接收了这个广播,就会做相应的处理。这个广播跟我们传统意义中的电台广播有些相似之处。之所以叫做广播,就是因为它只负责“说”而不管你“听不听”,也就是不管你接收方如何处理。另外,广播可以被不只一个应用程序所接收,当然也可能不被任何应
- Spring事务传播行为详解
bijian1013
javaspring事务传播行为
在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。
Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这
- eidtplus operate
征客丶
eidtplus
开启列模式: Alt+C 鼠标选择 OR Alt+鼠标左键拖动
列模式替换或复制内容(多行):
右键-->格式-->填充所选内容-->选择相应操作
OR
Ctrl+Shift+V(复制多行数据,必须行数一致)
-------------------------------------------------------
- 【Kafka一】Kafka入门
bit1129
kafka
这篇文章来自Spark集成Kafka(http://bit1129.iteye.com/blog/2174765),这里把它单独取出来,作为Kafka的入门吧
下载Kafka
http://mirror.bit.edu.cn/apache/kafka/0.8.1.1/kafka_2.10-0.8.1.1.tgz
2.10表示Scala的版本,而0.8.1.1表示Kafka
- Spring 事务实现机制
BlueSkator
spring代理事务
Spring是以代理的方式实现对事务的管理。我们在Action中所使用的Service对象,其实是代理对象的实例,并不是我们所写的Service对象实例。既然是两个不同的对象,那为什么我们在Action中可以象使用Service对象一样的使用代理对象呢?为了说明问题,假设有个Service类叫AService,它的Spring事务代理类为AProxyService,AService实现了一个接口
- bootstrap源码学习与示例:bootstrap-dropdown(转帖)
BreakingBad
bootstrapdropdown
bootstrap-dropdown组件是个烂东西,我读后的整体感觉。
一个下拉开菜单的设计:
<ul class="nav pull-right">
<li id="fat-menu" class="dropdown">
- 读《研磨设计模式》-代码笔记-中介者模式-Mediator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。
* 中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
*
* 在我看来,Mediator模式是把多个对象(
- 常用代码记录
chenjunt3
UIExcelJ#
1、单据设置某行或某字段不能修改
//i是行号,"cash"是字段名称
getBillCardPanelWrapper().getBillCardPanel().getBillModel().setCellEditable(i, "cash", false);
//取得单据表体所有项用以上语句做循环就能设置整行了
getBillC
- 搜索引擎与工作流引擎
comsci
算法工作搜索引擎网络应用
最近在公司做和搜索有关的工作,(只是简单的应用开源工具集成到自己的产品中)工作流系统的进一步设计暂时放在一边了,偶然看到谷歌的研究员吴军写的数学之美系列中的搜索引擎与图论这篇文章中的介绍,我发现这样一个关系(仅仅是猜想)
-----搜索引擎和流程引擎的基础--都是图论,至少像在我在JWFD中引擎算法中用到的是自定义的广度优先
- oracle Health Monitor
daizj
oracleHealth Monitor
About Health Monitor
Beginning with Release 11g, Oracle Database includes a framework called Health Monitor for running diagnostic checks on the database.
About Health Monitor Checks
Health M
- JSON字符串转换为对象
dieslrae
javajson
作为前言,首先是要吐槽一下公司的脑残编译部署方式,web和core分开部署本来没什么问题,但是这丫居然不把json的包作为基础包而作为web的包,导致了core端不能使用,而且我们的core是可以当web来用的(不要在意这些细节),所以在core中处理json串就是个问题.没办法,跟编译那帮人也扯不清楚,只有自己写json的解析了.
- C语言学习八结构体,综合应用,学生管理系统
dcj3sjt126com
C语言
实现功能的代码:
# include <stdio.h>
# include <malloc.h>
struct Student
{
int age;
float score;
char name[100];
};
int main(void)
{
int len;
struct Student * pArr;
int i,
- vagrant学习笔记
dcj3sjt126com
vagrant
想了解多主机是如何定义和使用的, 所以又学习了一遍vagrant
1. vagrant virtualbox 下载安装
https://www.vagrantup.com/downloads.html
https://www.virtualbox.org/wiki/Downloads
查看安装在命令行输入vagrant
2.
- 14.性能优化-优化-软件配置优化
frank1234
软件配置性能优化
1.Tomcat线程池
修改tomcat的server.xml文件:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads="1200" m
- 一个不错的shell 脚本教程 入门级
HarborChung
linuxshell
一个不错的shell 脚本教程 入门级
建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行)。 如同其他语言一样
- Spring4新特性——核心容器的其他改进
jinnianshilongnian
spring动态代理spring4依赖注入
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- Linux设置tomcat开机启动
liuxingguome
tomcatlinux开机自启动
执行命令sudo gedit /etc/init.d/tomcat6
然后把以下英文部分复制过去。(注意第一句#!/bin/sh如果不写,就不是一个shell文件。然后将对应的jdk和tomcat换成你自己的目录就行了。
#!/bin/bash
#
# /etc/rc.d/init.d/tomcat
# init script for tomcat precesses
- 第13章 Ajax进阶(下)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- Troubleshooting Crystal Reports off BW
blueoxygen
BO
http://wiki.sdn.sap.com/wiki/display/BOBJ/Troubleshooting+Crystal+Reports+off+BW#TroubleshootingCrystalReportsoffBW-TracingBOE
Quite useful, especially this part:
SAP BW connectivity
For t
- Java开发熟手该当心的11个错误
tomcat_oracle
javajvm多线程单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
- 正则表达式大全
yang852220741
html编程正则表达式
今天向大家分享正则表达式大全,它可以大提高你的工作效率
正则表达式也可以被当作是一门语言,当你学习一门新的编程语言的时候,他们是一个小的子语言。初看时觉得它没有任何的意义,但是很多时候,你不得不阅读一些教程,或文章来理解这些简单的描述模式。
一、校验数字的表达式
数字:^[0-9]*$
n位的数字:^\d{n}$
至少n位的数字:^\d{n,}$
m-n位的数字:^\d{m,n}$