python 正则匹配时间格式转换方法】的更多相关文章

import re from datetime import datetime a = '2018年8月9日 10:10' s = re.findall('\d+',a) print(s) d = ' '.join(s) print(d) f = datetime.strptime(d,'%Y %m %d %H %M').strftime('%Y/%m/%d %H:%M') print(f)>>>>>><结果> ['2018', '8', '9', '10'…
用正则表达式匹配时间格式命名的文件夹 ls mypath | grep -E "[0-9]{4}-[0-9]{1,2}" mypath为需要查询的目录 查询出来的文件夹格式为:例 2018-12 如果要 2018-12-1 这种格式则把正则改为 ls mypath | grep -E "[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}" 如果是2018/12/1这种格式就把中间的"-"改为"/" 如果是两种格式都要…
需要解决的问题:要匹配字符串,字符串中字母的大小写不确定,如何匹配? 问题出现之前是使用字符串比较的方式,比如要匹配'abc',则用语句: if s == 'abc':#s为需要匹配的字符串 print '匹配成功\n' 现在的问题是s可能是Abc.ABC等等,所以需要大小写不敏感的匹配,如果把需要匹配的模式的大小写进行罗列,那即使是三个字母的短模式也是很麻烦,查了一下,正则表达式re模块中有个参数flags=re.I,这样就可以大小写不敏感的匹配了,示例如下: import re s = 'A…
1.php正则匹配UTF-8格式的中文汉字 和 [,][,][.]等符号 if (preg_match_all("/([\x{4e00}-\x{9fa5}]+((,)?)+((,)?)+((.)?))/u", (string)$jingdian_arr['view_desc'], $match)) { //var_dump($match[0]); $count = count($match[0]); unset($jingdian_arr['view_desc']); for($i=1…
由于 需求原因,需要匹配 提取中文,大量google下,并没有我需要的.花了一个小时大概测试,此utf8中文通过,特留文.    参考: http://hi.baidu.com/nivrrex/blog/item/e6ccaf511d0926888d543071.html           http://topic.csdn.net/u/20070404/15/b011aa83-f9b7-43b3-bbff-bfe4f653df03.html 首先,确保所有编码都为 unicode      …
# -*- coding:utf-8 -*- import re '''python 3.5版本 正则匹配中文,固定形式:\u4E00-\u9FA5 ''' words = 'study in 山海大学' regex_str = ".*?([\u4E00-\u9FA5]+大学)" match_obj = re.match(regex_str, words) if match_obj: print(match_obj.group(1)) 结果:山海大学…
# -*- coding:utf-8 -*- import pandas as pd import time import datetime start_date = '2020-06-08' # 一.将字符串文本类型转化为时间 # %Y-%m-%d 为自定义时间格式,也可设置成完整格式:%Y-%m-%d %H:%M:%S,若使用完整格式,输入的start_date的文本格式也要完整对应,否则报错 # 1.使用datetime包 date_time = datetime.datetime.str…
#!/usr/bin/python3 # -*- coding: utf-8 -* import time def str_to_stamp(): # 转换显示格式 time1 = time.strptime(time_str, '%Y-%m-%d %H:%M:%S') # 转为时间戳 time2 = int(time.mktime(time1)) print(time2) def stamp_to_str(): # 转换本地时间 time1 = time.localtime(time_stam…
我是转载的这个大神的   他的网址:https://www.cnblogs.com/wanglinjie/p/9226926.html #以下是time的方法 >>> import time>>> time.time()                                          #秒的格式1529935923.641123>>> time.localtime( time.time() )               #以元祖形式…
2019-03-17 11:00:00格式转化 import datetime # str转时间格式: dd = '2019-03-17 11:00:00' dd = datetime.datetime.strptime(dd, "%Y-%m-%d %H:%M:%S") print(dd,type(dd)) # 时间格式转str: dc = dd.strftime("%Y-%m-%d %H:%M:%S") print(dc,type(dc)) 输出:2019-03-…
平时经常会使用到时间转换,组件库已经有很多组件可以自动生成时间类型了,但是底层的封装方法还是得有 获取当前时间 new Date()  或者自己拥有一个毫秒时间 方法如下 /** * title: 时间.日期对象的格式化 * date:毫秒时间 * format:事件格式"yyyy-MM-dd hh:mm:ss",年-月-日 时:分:秒 * flag:计算剩余时间则为true(d天h时m分s秒) **/ function dateFormat(date, format, flag) {…
最近用Python做一个crawler工具的时候,发现用一个正则表达式可以匹配到个数据的时候用match.group()只能打印出第一个数据,其它数据不能打印出来.最后找到解决方法,现在记录一下,直接贴代码: P = re.compile(r'<a(\s)href=\"/android/info/([0-9]*)\.html\?fw=([0-9]*)\"', re.M)                        match = p.findall(txt)          …
本文从百度知道回来中粘贴过来,当做一个笔记,因为,说的很详细 最简单的正则 如 : \d{4}-\d{2}-\d{2}但是实际情况却不是那么简单,,要考虑,有效性和闰年等问题..... 对于日期的有效范围,不同的应用场景会有所不同.MSDN中定义的DateTime对象的有效范围是:0001-01-01 00:00:00到9999-12-31 23:59:59. UNIX时间戳的0按照ISO 8601规范为 :1970-01-01T00:00:00Z. 先考虑与年份无关的前三条规则,年份可统一写作…
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Date : 2017-08-30 20:38:23 # @Author : EnderZhou (zptxwd@gmail.com) # @Link : http://www.cnblogs.com/enderzhou/ # @Version : $Id$ import requests import re def open_url(url): req = requests.get(url=url…
遇到问题:正常情况获取的网页源码可以通过正则表达式快速匹配到内容,,但是如果出现问题,没有匹配到的内容,正则就会一直回溯,导致内存激增,一直循坏查找. 解决思路:  一.如果能够有特殊内容可以标记,满足标记再正则,不匹配则不正则,避免一直回溯 二.可以设置timeout的函数,如果运行超过多少时间则强制结束(下面给出了示例) 用threading.Timer的方法,通过start->sleep->cancel的形式,实现强制结束函数的调用 import threading import tim…
text="山东省临沂市兰山区 市委大院中区21号楼4单元 276002 奥特曼1号 18254998111" #匹配手机号 m=re.findall(r"1\d{10}",text) if m: print(m) #匹配电话号 pattern = re.compile(r"((\d{3}|\(\d{3}\)|\d{4}|\(\d{4}\))?(\s|-|.)?(\d{8}))") a = re.match(pattern, text) if a…
观察一些邮箱格式,有些邮箱格式简单,有些复杂,在网上找了个邮箱的正则表达式,分析一下邮箱的规则.该表达式:/^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/ 拆分:[1]/^\w+以英文,数字,下划线开头,(一个或多个.)[2]([\.\-]\w+)*跟着点或中线任意一个,然后再跟着的英文.数字.下划线(一个或多个).这个整个部分用圆括号括起来,可以零个一个或多个.(可有可无,可多个)[3]\@\w+跟着一个@符号,后面英文.数字.下划线(一个或多个)[4]([\…
代码示例: import re def Find(string): # findall() 查找匹配正则表达式的字符串 url = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*\(\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+',string) return url string = 'appQRCodeURL: https://www.pgyer.com/app/qrcxxxxstory/d5eab71a31…
正则表达式模式 模式字符串使用特殊的语法来表示一个正则表达式: 字母和数字表示他们自身.一个正则表达式模式中的字母和数字匹配同样的字符串. 多数字母和数字前加一个反斜杠时会拥有不同的含义. 标点符号只有被转义时才匹配自身,否则它们表示特殊的含义. 反斜杠本身需要使用反斜杠转义. 由于正则表达式通常都包含反斜杠,所以你最好使用原始字符串来表示它们.模式元素(如 r'\t',等价于 '\\t')匹配相应的特殊字符. 下表列出了正则表达式模式语法中的特殊元素.如果你使用模式的同时提供了可选的标志参数,…
需求是酱的: 输入一个目录,这个目录包含检测目录的必备信息但不准确需要获得后加工一下,如给出目录:C:\Program Files\Common Files\DESIGNER,需要检测的目录是:C:\Program Files\Common Files\System,即从给出的目录中获取前面的信息,后面的补上的目录(System)是指定的.从E:\res\tmp目录中检测xml文件,返回xml文件的目录 代码如下: 1 import os 2 import re pathlist = [] pa…
使用Re模块 首先生成一个匹配模式pattern,如pattern='.test' 然后使用re.match(pattern,str)或者search()匹配调用 match跟search的区别: match()函数试图从字符串的起始部分对模式进行匹配.如果匹配成功救返回一个匹配对象:如果匹配失败,就返回None,匹配对象的group()方法用于显示那个成功的匹配 search()函数工作方式与match()完全一致,不同之处在于search()函数会用他的字符串参数,在任意位置对给定正则表达式…
参考:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html # re.match import re m = re.match(r'(\w+) (?P<sign>.*)', 'hello standby!') print(type(m)) # <class '_sre.SRE_Match'> print(m) # <_sre.SRE_Match object; span=(0, 14), match='hell…
import rephone = str(input('请输入手机号:'))# b = str(12345678912)t = re.compile(r'^1(3\d|4[4-9]|5[0-35-9]|6[67]|7[013-8]|8[0-9]|9[0-9])\d{8}$')s = re.search(t,phone)# print(s)if s: print(s.group(),'是正常手机号')else: print('手机号格式不正确')…
贪婪模式  {m,n}表示匹配子串的次数>=m and <=n,再此分为内匹配次数尽可能的多 贪婪模式  {,n}表示 >=0 and <=n 贪婪模式  {m,} 表示>=m {m}表示示匹配子串m次 贪婪模式    * 匹配子串0次或多次,相当于{0,} 贪婪模式    +匹配子串一次或多次{1,} ?匹配子串0次或1次{0,1} 非贪婪模式匹配次数解析:*? +?  ??…
^(0?[0-9]|1[0-9]|2[0-3]):(0?[0-9]|[1-5][0-9])$…
import re x=re.findall(r'\bf[a-z]*', 'which foot or hand fell fastest') print(x)…
t = '19:16:30' mt = re.match(r'^(0[0-9]|1[0-9]|2[0-3]|[0-9])\:(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9])\:(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9])$', t) print mt.groups() ip = '255.105.25.55' ipm = re.match(r'^([1-9]?\d|1\d\d|2[0-4]\d…
python 处理时间 import time import re now = time.strftime("%Y-%m-%d %H:%M:%S", time.gmtime()) timeobj = re.match(r'(.*)-(.*)-(.*) (.*):(.*):(.*)', now) if timeobj is not None: timestamp = time.mktime(time.strptime(now, "%Y-%m-%d %H:%M:%S")…
如果我们要维护好一个庞大的配置管理系统那么首选得维护好我们的管理对象,在saltstack系统中我们的管理对象叫做Target, 在master上我们可以采用不同Target去管理不同的Minion.这些Target都是通过去管理和匹配Minion的ID来做的一些集 操作目标 正则匹配 组管理 操作目标 借用别人博客上面的内容 贴在下面 1.匹配Minions Id 匹配所有 (*) [root@node1 salt]# salt '*' test.ping node2.minion: True…
上一篇python正则匹配次数大家应该也发现了,除了?其他匹配次数规则都是尽可能多的匹配 那如果只想匹配1次怎么办呢,这就是正则中非贪婪模式的概念了 原理就是利用?与其他匹配次数规则进行组合 单个匹配规则: * = {0,}表示匹配0-n次 + = {1,}表示匹配1-n次 ?= {0,1}表示匹配0-1次 三者可组合成非贪婪模式匹配次数解析:*? +?  ?? 简而言之:它们必须结合左右的子串进行匹配,左边正则必须非空,右边正则可以为空,中心思想就是在匹配到右边的正则之前尽可能少次匹配左边的正…