正则

JS正则表达式

一笑奈何 提交于 2019-12-21 11:32:21
JS正则表达式 1.两种模糊匹配 1.1 横向模糊匹配 横向模糊指的是,一个正则可匹配的字符串的长度不是固定的,可以是多种情况的。 其实现的方式是使用量词。譬如{m,n},表示连续出现最少m次,最多n次。 比如/ab{2,5}c/表示匹配这样一个字符串:第一个字符是“a”,接下来是2到5个字符“b”,最后是字符“c”。测试如下: var regex = /ab { 2,5 } c/g ; var string = "abc abbc abbbc abbbbc abbbbbc abbbbbbc" ; console.log ( string.match ( regex ) ) ; // = > [ "abbc" , "abbbc" , "abbbbc" , "abbbbbc" ] 注意:案例中用的正则是/ab{2,5}c/g,后面多了g,它是正则的一个修饰符。表示全局匹配,即在目标字符串中按顺序找到满足匹配模式的所有子串,强调的是“所有”,而不只是“第一个”。g是单词global的首字母。 1.2 纵向模糊匹配 纵向模糊指的是,一个正则匹配的字符串,具体到某一位字符时,它可以不是某个确定的字符,可以有多种可能。 其实现的方式是使用字符组。譬如[abc],表示该字符是可以字符“a”、“b”、“c”中的任何一个。 比如/a[123]b/可以匹配如下三种字符串:“a1b”、“a2b”、

jq 将某些字符去掉 正则

橙三吉。 提交于 2019-12-21 09:39:47
Jquery: .replace(/\ +/g,"") //去掉空格方法 $("#data").val($("#data").val().replace(/[ ]/g,"")); //去掉空格 .replace(/[ ]/g,"")//去掉空格 $("#data").val($("#data").val().replace(/[\r\n]/g,""));//去掉回车换行 .replace(/[\r\n]/g,"")//去掉回车换行 .replace(/-/g, '') //去掉"-"号 来源: CSDN 作者: weixin_42095170 链接: https://blog.csdn.net/weixin_42095170/article/details/103639334

python基础 --使用正则来处理各种匹配问题

旧巷老猫 提交于 2019-12-21 06:53:25
import re ##匹配列表内的非负整数 list = [ 99 , 100 , - 100 , - 1 , 90 ] pattern = re . compile ( r '[1-9]\d*|0' ) for i in list : m = pattern . search ( str ( i ) ) print ( m ) ##匹配列表内的整数 list = [ 99 , 100 , - 100 , - 1 , 90 ] pattern = re . compile ( r '[1-9]\d*' ) for i in list : m = pattern . match ( str ( i ) ) print ( m ) ##匹配列表内的非正整数 list = [ 99 , 100 , - 100 , - 1 , 90 ] pattern = re . compile ( r '-[1-9]\d*|0' ) for i in list : m = pattern . match ( str ( i ) ) print ( m ) # ##正则匹配邮箱 c = re . compile ( r '^\w+@(\w+\.)+(com|cn|net|edu)$' ) string = '50772618@qq.com' s = c . search ( string ) if s

关于Logstash中grok插件的正则表达式例子

倾然丶 夕夏残阳落幕 提交于 2019-12-21 03:48:01
原文地址: https://www.cnblogs.com/stozen/p/5638369.html 一、前言 近期需要对 Nginx 产生的日志进行采集,问了下度娘,业内最著名的解决方案非 ELK ( Elasticsearch , Logstash , Kibana )莫属。 Logstash 负责采集日志, Elasticsearch 负责存储、索引日志, Kibana 则负责通过Web形式展现日志。 今天,我要说的是 Logstash ,它可以从多种渠道采集数据,包括控制台标准输入、日志文件、队列等等,只要你能想到,都可以通过插件的方式实现。 其中, 日志源提供的日志格式可能并不是我们想要插入存储介质里的格式,所以,Logstash里提供了一系列的filter来让我们转换日志 。 Grok 就是这些filters里最重要的一个插件,下面我就说说它。 二、Grok提供的常用Patterns说明及举例 大多数Linux使用人员都有过用正则表达式来查询机器中相关文件或文件里内容的经历,在Grok里,我们也是使用正则表达式来识别日志里的相关数据块。 有两种方式来使用正则表达式: 直接写正则来匹配 用Grok表达式映射正则来匹配 在我看来,每次重新写正则是一件很痛苦的事情,为什么不用表达式来一劳永逸呢? 特别提示:Grok表达式很像C语言里的宏定义 要学习Grok的默认表达式

正则匹配对应数据 js

浪尽此生 提交于 2019-12-21 01:52:27
正则 js 1.只能输入和粘贴汉字 < input onkeyup = "value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste = "clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" > 3.只能输入和粘贴数字 < input onkeyup = "this.value=this.value.replace(/\D/g,'')" onafterpaste = "this.value=this.value.replace(/\D/g,'')" / > 5.数字脚本 < input onkeyup = "if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}" > 6.只能输入数字和英文 < input onkeyup = "value=value.replace(/[\W]/g,'') " onbeforepaste = "clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" > 8.简易禁止输入汉字 < input

正则量词

匆匆过客 提交于 2019-12-19 23:29:56
例子: 1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title></title> 6 <style> 7 8 </style> 9 10 </head> 11 <body> 12 13 <script type="text/javascript"> 14 量词:个数 15 {n} 正好出现n次 16 {n,m} 最少n次,最多m次 17 {n,} 最少n次,最多不限 18 ? {0,1}(可有可无) 19 * {0,}(可以没有,也可以有无数位) 不推荐用 20 21 电话号码座机规则,一般电话号码8位数 22 \d{8} 8位数字 23 [1-9]\d{7} 8位数字,第一位数是1-9(不能为0),后7位0-9随意 24 25 QQ号的规则,一般QQ号是5到11位 26 [1-9]\d{4,10} 第一位数字是1-9不能为0,剩下的数字有4到10个,0-9随意 27 28 固定电话 29 010-87496698(有区号) 30 87496698(无区号) 31 32 (0\d{2,3}-)?[1-9]\d{7} 可有可无的东西用括号包起来后面跟问号,区号可出现可不出现 33 </script> 34 </body> 35 </html> 来源: https://www.cnblogs.com

常用正则 密码 电话 邮箱 身份证 帐号 日期 数字验证

我只是一个虾纸丫 提交于 2019-12-19 03:27:00
常用验证正则 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$ 强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10 之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$ 强密码(必须包含大小写字母和数字的组合,可以使用特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$ 手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$ 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$ 国内电话号码(0511-4405222、021-87888822):\d{3}-\d{8}|\d{4}-\d{7} 电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号): ((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4

js正则,电话,邮箱

吃可爱长大的小学妹 提交于 2019-12-19 01:25:49
1. <script type="text/javascript"> var str="Is this all th05777-89856825ere is50577-456-?"; var model = /\d{4}\-\d{7,8}/g; document.write(str.match(model)); </script> 输出结果 5777-89856825 备注: \d{4} 查找4位数字 \d 数字 \d{7,8} 查找7-8位数字 g 是全局匹配  扩展代码一: var str="Is this all th05888777-89856825ere is5057788-456-?"; var model = /\d{4}\-\d{7,8}/g; var t = str.match(model); var n = false; if(t !=''){ n = true; } document.write(str.match(model)); document.write(n); 输出: 8777-89856825true 完美电话正则  2. 扩展: document.write(patt1.test(str)); document.write(str.match(model)); 来源: https://www.cnblogs.com/wesky/p/3142280

正则爬取猫眼电影榜单信息

扶醉桌前 提交于 2019-12-18 17:59:42
预期效果 代码实现 import requests from requests.exceptions import RequestException import re import json def get_one_page(url): try: response = requests.get(url, headers={ 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; rv:57.0) Gecko/20100101 Firefox/57.0'} ) if response.status_code == 200: return response.text return None except RequestException: return None def parse_one_page(html): pattern = re.compile('<dd>.*?</dd>', re.S) results = re.findall(pattern, html) for result in results: sub_pattern = re.compile( '<dd>.*?board-index.*?>(\d+)</i>.*?data-src="(.*?)".*?name"><a.*?>(.*?)</a>.*?star">(.*?)</p>.*

java 正则表达式语法

有些话、适合烂在心里 提交于 2019-12-18 10:57:51
[ java 正则表达式 ] ( https : / / www . runoob . com / java / java - regular - expressions . html ) 字符的取值范围 1. [ abc ] : 表示可能是a,可能是b,也可能是c。 2. [ ^ abc ] : 表示不是a , b , c中的任意一个 3. [ a - zA - Z ] : 表示是英文字母 4. [ 0 - 9 ] : 表示是数字 简洁的字符表示 . :匹配任意的字符 \d:表示数字 \D:表示非数字 \s:表示由空字符组成, [ \t\n\r\x\f ] \S:表示由非空字符组成, [ ^ \s ] \w:表示字母、数字、下划线, [ a - zA - Z0 - 9 _ ] \W:表示不是由字母、数字、下划线组成 数量表达式 1. ? : 表示出现 0 次或 1 次 2. + : 表示出现 1 次或多次 3. * : 表示出现 0 次、 1 次或多次 4. { n } :表示出现n次 5. { n , m } :表示出现n ~ m次 6. { n , } :表示出现n次或n次以上 来源: CSDN 作者: liu137756 链接: https://blog.csdn.net/liu137756/article/details/103592017