正则

linux 一些脚本语法

我只是一个虾纸丫 提交于 2019-11-30 03:50:00
sed是用来处理文本的 s/正则表达式/替换字符串/ :表示将正则表达式的内容替换为后面的字符串 g :表示替换全部,即如果不加g,则只会替换第一个 比如更改很多数据库的某个字段 update.sql {   ALTER TABLE db.role CHANGE LIE1 LIE2 mediumblob DEFAULT NULL; } updatedb.sh {   for(int i =1;i <= 100; i++)   do     name = world$i     cat update.sql | sed "s/db/$name/g" | mysql -h -u -p   done }   来源: https://www.cnblogs.com/hhxj/p/11556068.html

js_中国大陆加港澳台手机正则验证

懵懂的女人 提交于 2019-11-30 03:49:51
正则表达式:^[1][3-8]\d{9}$|^([6|9])\d{7}$|^[0][9]\d{8}$|^[6]([8|6])\d{5}$ 规则说明: 中国大陆:开头1 3-8号段,后边跟9位数字 台湾:09开头后面跟8位数字 香港:9或6开头后面跟7位数字 澳门:66或68开头后面跟5位数字 注意:以上表达式只验证港澳台及大陆手机号码,不包含座机小灵通及区号等验证 参考文章 来源: https://www.cnblogs.com/wush-1215/p/11556002.html

前端开发掌握nginx常用功能之server&location匹配规则

不想你离开。 提交于 2019-11-30 03:09:56
nginx主要是公司运维同学必须掌握的知识,涉及到反向代理、负载均衡等服务器配置。前端开发尤其是纯前端开发来说对nginx接触的并不多,但是在一些情况下,nginx还是需要前端自己来搞;例如我们公司的开发环境和测试环境,虽然qa可以帮助搞定配置,但是每新增一个前端模块或者模块nginx配置经常变更都求着qa搞,麻烦别人还不如自己来搞,这样更能理解自己的需求。这些都需要前端开发对nginx有所理解,下面我们来说说nginx最基础的server和location匹配规则。 1. server匹配规则 nginx的 server 块可以配置多个,那么一个请求该匹配那个server块呢,这主要是根据server块的 server_name 和 listen 来决定的。其中 server_name 仅仅检查请求的“Host”头以决定该请求应由哪个虚拟主机来处理。 先看一个例子: server { listen 8001; server_name *.net; } server { listen 8001; server_name baidu.net; } server { listen 8001; server_name baidu.*; } 通过测试,发现 相同listen端口 的情况下,多个server的匹配顺序如下: 完全匹配优先级最高,匹配则终止 通配符在前的优先级其次 ,如*

【0918】正则介绍_grep

时光毁灭记忆、已成空白 提交于 2019-11-30 02:53:51
【0918】正则介绍_grep 9.1 正则介绍_grep上 9.2 grep中 9.3 grep下 一、正则介绍 正则是一串有规律的字符串,它使用单个字符串来描述或匹配一系列符合某个语法规则的字符串。 二、grep工具 1、基本格式 用来过滤指定的关键词,格式为grep 【-cinvABC】‘word’ filename (1)-c 打印符合要求的行数 查找出/e tc/passwd文件中带有nologin字符的文件并列出行数 (2)-n表示输出符合要求的行及其行号 (3)-i不区分大小写 (4)-v 表示打印不符合要求的行 (5)-r 把子目录或者子子目录中的文件遍历一遍查找关键词 (6)-A 后跟数字表示过滤出符合要求的行以及下面的n行 (7)-B 后跟数字例如B2表示打印符合要求的行及其以上两行 (8)-C 后跟数字表示打印符合要求的上下各两行 2、grep、egrep示例 (1)grep‘【0-9】’ passwd 文件中只要带数字的行都能过滤出来 (2)grep -v ‘【0-9】’ passwd文件中只要带数字的都不列出 (3)grep -v ‘^#’ /etc/inittab 把不是以#开头的行打印出来 (4)grep ‘^[^0-9]’ passwd 列出非0-9开头的行 (5)grep ‘r.o’ passwd 打印出同一字符串中r、o中间有任意个字符的行 (6

Bugku web——字符?正则?

谁说我不能喝 提交于 2019-11-30 00:26:58
打开题目链接,有如下代码 <?php highlight_file('2.php'); $key='KEY{********************************}'; $IM= preg_match("/key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i", trim($_GET["id"]), $match); if( $IM ){ die('key is: '.$key); } ?> 函数preg_match功能为用正则表达式匹配字符串,如果匹配成功,返回值1,并把匹配到的值赋值给match,否则返回0。函数trim功能为去掉字符串开头和结尾的空格。 因此此题的目标为构造一个满足正则表达式 /key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i 的字符串id 对其进行分析: 结尾的 i 表示忽略大小写 多次出现的 key 表示匹配字符串key . 表示匹配除换行符 \n 之外的任何单字符 * 表示匹配前一个字符0次或多次 {4,7}表示匹配前一个字符串至少4次,至多7次 : 匹配字符: \/ 匹配字符/ (.*key) 表示一个子表达式,功能和上文相同 [a-z] 表示表示匹配小写a-z中的任意一个 [:punct:] 表示匹配 !"#$%&’()*+,-./:;<=>?@[]

正则验证

耗尽温柔 提交于 2019-11-30 00:03:35
1、 手机号:mobile /^1((3[\d])|(4[5,6,9])|(5[0-3,5-9])|(6[5-7])|(7[0-8])|(8[1-3,5-8])|(9[1,8,9]))\d{8}$/ 2、国内座机电话(如: 010-12345678):telephone /\d{3}-\d{8}|\d{4}-\d{7}/ 3、电话或手机:phoneNo /(^1([3|4|5|7|8|])\d{9}$)|(^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$)/ 4、email地址:email /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/ 5、身份证:IDcard /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/ 6、账号4-10位数字或字母组成 /^[0-9A-Za-z]{4,10}$/ 7、账号由5-16位数字字母下划线组成 /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/ 8、账号4到16位(字母,数字,下划线,减号) /^[a-zA-Z0-9_-]{4,16}$/ 9、是否字母

正则练习

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-29 23:16:40
正则图: https://jex.im/regulex/#!flags=&re=%5E(a%7Cb)*%3F%24 非全数字 密码长度 6-12 位,由数字、小写字符和大写字母组成,但必须至少包括 2 种字符 /((?=.*[a-z])(?=.*[A-Z])|(?=.*[a-z])(?=.*[0-9])|(?=.*[0-9])(?=.*[A-Z]))^[a-zA-Z0-9]{6,12}$/g.test('123456az') 用(?.*[a-z])匹配 有任意多个字符后面跟a-z即表示必须包含a-z 另一种解法 至少数字、小写、大写任意包含2种;也就是不能为其中一种 用(?!p) /(?!^[0-9]{6,12}$)(?!^[a-z]{6,12}$)(?!^[A-Z]{6,12}$)^[0-9A-Za-z]{6,12}$.test('123456az') (?!p)一般有不能全为 (?!^[0-9]+$) 或者不能包含(?!.*[0-9]+) 来源: https://www.cnblogs.com/little-ab/p/11538335.html

前端复习之JavaScript(ECMAScript5)

試著忘記壹切 提交于 2019-11-29 22:27:56
啦啦啦啦啦啦啦啦绿绿绿绿绿绿 1 1.JavaScript: 2 前段三大语言:HTML CSS js 3 HTML:专门编写网页内容的语言 4 CSS:专门编写网页样式的语言 5 js:专门编写网页交互行为的语言 6 原生js:不需要下载任何第三方文件就可以直接使用的js 7 ECMAScript(ES):ECMA制定的JavaScript语言国际标准规定js语言的核心语法 8 JavaScript:NetScape遵照ES标准实现的自己的js语言 9 JScript:Microsoft遵照ES…… 10 DOM:专门操作网页内容的程序标准 11 BOM:专门操作浏览器窗口的程序 12 js语言四大特点: 13 1.运行在脚本解释引擎中:脚本解释引擎:专门解析js语言并执行的小软件 14 1.浏览器自带脚本解释引擎:内容排版引擎和脚本解释引擎 15 2.独立安装的脚本解释引擎:Node.js 16 2.边解释边执行,后解释的相同内容会覆盖先解释的 17 3.弱类型: 18 声明变量时,不必提前规定变量的数据类型,一个变量先后可保存不同类型的数据 19 4.基于对象:core 1.使用 1 1. 页面中的script标签里: 2 一旦进入script标签内,就要使用js的语法 3 问题: 不符合内容与行为分离的原则——不便于维护和共用 4 2. 独立的js文件中: 5 引入:

正则匹配ipv4和ipv6

倾然丶 夕夏残阳落幕 提交于 2019-11-29 20:49:19
import sys import re def is_ipv4(ip): p = re.compile( '^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$') if p.match(ip): return True else: return False def is_ipv6(ip): p = re.compile('^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:)|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2})|(([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3})|(([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4})|(([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5})|([0-9A-Fa-f]{1,4}:(:[0-9A-Fa-f]{1,4}){1,6})|(:(:[0-9A-Fa-f]{1,4}){1,7})|(([0-9A-Fa-f]

Java网页数据采集器[上篇-数据采集]

末鹿安然 提交于 2019-11-29 19:24:33
开篇 作为全球运用最广泛的语言,Java 凭借它的高效性,可移植性(跨平台),代码的健壮性以及强大的可扩展性,深受广大应用程序开发者的喜爱. 作为一门强大的开发语言,正则表达式在其中的应用当然是必不可少的,而且正则表达式的掌握能力也是那些高级程序员的开发功底之体现,做一名合格的网站开发的程序员(尤其是做前端开发),正则表达式是必备的. 最近,由于一些需要,用到了java和正则,做了个的 足球网站 的数据采集程序;由于是第一次做关于java的html页面数据采集,必然在网上查找了很多资料,但是发现运用如此广泛的java在使用正则做html采集方面的(中文)文章是少之又少,都是简单的谈了下java正则的概念,没有真正用在实际网页html采集,实例教程更是寥寥无几(虽然java有它自己的Html Parser,而且十分强大),但个人觉得作为如此深入人心的正则表达式,理应有其相关的java实例教程,而且应该很多很全.于是在完成java版的html数据采集程序之后,本人便打算写个关于正则表达式在java上的html页面采集,以便有相关兴趣的读者更好的学习. 本期概述 这期我们来学习下如何读取网页源代码,并通过group正则 动态抓取我们需要的网页数据.同时在接下来的几期,我们将继续学习 [数据存储] 如何将抓取的比赛数据存到数据库(MySql), [数据查询] 怎样查询我们想看的比赛记录