regular expression
正则表达式使用:
常用规则:
一、常用特殊字符: $ 匹配输入字符串的结尾位置。如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字符本身,请使用 \$。 ( ) 标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用 \( 和 \)。 * 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。 + 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。 . 匹配除换行符 \n之外的任何单字符。要匹配 .,请使用 \。 [ ] 标记一个中括号表达式的开始。要匹配 [,请使用 \[。 ? 匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \?。 \ 将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n' 匹配字符 ‘n'。'\n' 匹配换行符。序列 ‘\\' 匹配 “\”,而 ‘\(' 则匹配 “(”。 ^ 匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符本身,请使用 \^。 { } 标记限定符表达式的开始。要匹配 {,请使用 \{。 | 指明两项之间的一个选择。要匹配 |,请使用 \|。 二、常用限定符: * + ? {m }{m,n} 三、默认最长匹配 ,最短匹配需要添加?
python使用:
#!/usr/bin/python # _*_ coding: UTF-8 _*_ from pip._vendor.requests import structures from time import strftime import datetime,time import re def format(): str='version' num=1.0 format="字符串为:%s"%str print(format) print("字符串为%s 版本为:%d"%(str,num)) word="\thello world \n " print(" 直接输出:",word) print("rstrip() 后输出:",word.rstrip()) print(" strip() 后输出:",word.strip()) print(" strip() 后输出:",word.lstrip()) #= !=字符串比较 endswith startswith split join ,find ,rfind ,replace def join(): str="hello , 你好,china" str2=" word " str2="hello" print(str+" "+str2 ) strs=["hello "," word " ," china"] print("".join(strs)) print(str[4]) print(str[1:3]) print(str.split( ",")) print("分割后的字符串类型:", type(str.split( ",") )) print(str.startswith("hello")) str.endswith( ) def reverse(): str="my name is wangzt" out="" li=list(str) print(li) li.reverse() out="".join(li) # for i in range(len(li) , 0 , -1 ): # out += "".join( li[i-1]) # out+=li[i-1] print(out) #strftime时间到字符串 strptime字符串到时间 def timeAndStr(): #时间到字符串的转换 print(time.strftime("%Y-%m-%d" , time.localtime())) k=(1,2,3) print( type( k )) #字符串转换为时间 t=time.strptime("2018-9-9", "%Y-%m-%d") t2=time.mktime( t)#时间的元组转换为时间戳 print( t2 ) print(time.ctime( t2 ) )#毫秒时间戳转换为时间类型 print(time.localtime()[:6] ) #正则表达式查找比较费时 ,如果多次查找用compie编译返回pattern对象然后在匹配 def testZZ(): s="HELLO WORD" s2="你好 WORLD2" print(re.findall(r"^hello", s )) print(re.findall(r"^hello", s,re.I )) #hello开头的单词 print(re.findall("word$", s,re.I )) #word结束的单词 print(re.findall(r"\b\w+\b", s,re.I )) #匹配所有单词 #替换功能 print(re.sub("HELLO", "hi",s )) print(re.sub("HELLO", "hi", s[-4:] )) #subn使用 print("匹配字母数字:"+ re.sub(r"\w", "hi", s2 )) print("subn 匹配字母数字:"+ str(re.subn(r"\w", "hi", s2 ) ) )#返回 带有匹配次数 元组 # p=re.compile(r"(abc)\1") m=p.match("abcabcabc") print(m.group(0)) print(m.group()) print(m.groupdict().keys( )) print(m.groupdict().values( )) print(m.re.pattern ) if __name__ == '__main__': # format() # join() # reverse() # timeAndStr() testZZ()

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Solution to permission issues when viewing Python version in Linux terminal When you try to view Python version in Linux terminal, enter python...

How to avoid being detected when using FiddlerEverywhere for man-in-the-middle readings When you use FiddlerEverywhere...

How to teach computer novice programming basics within 10 hours? If you only have 10 hours to teach computer novice some programming knowledge, what would you choose to teach...

When using Python's pandas library, how to copy whole columns between two DataFrames with different structures is a common problem. Suppose we have two Dats...

How does Uvicorn continuously listen for HTTP requests? Uvicorn is a lightweight web server based on ASGI. One of its core functions is to listen for HTTP requests and proceed...

Fastapi ...

Using python in Linux terminal...

Understanding the anti-crawling strategy of Investing.com Many people often try to crawl news data from Investing.com (https://cn.investing.com/news/latest-news)...
