Python Regular Expression

Regular expression in Python

 

^

Matches the beginning of a line

$

Matches the end of the line

.

Matches any character

\s

matches whitespace

\S

matches any non-whitespace

*

repeats a character 0 or more times

*?

repeats a character 0 or more times(non-greedy)

+

repeats a character 1 or more times

+?

repeats a character 1 or more times(non-greedy)

[aeiou]

matches a single character in the listed set

[^XYZ]

matches a single character not in the listed set

[a-z0-9]

the set of characters can include a range

(

indicates where string extraction is to start

)

indicates where string extraction is to end

 

Greedy Matching

import re

x='From: Using the :character'

y=re.findall('^F.+:', x)

print (y)

Output:

['From: Using the :']

 

import re

x='From: Using the :character'

y=re.findall('^F.*:', x)

print (y)

Output:

['From: Using the :']

 

NON-Greedy Matching

import re

x='From: Using the :character'

y=re.findall('^F.+?:', x)

print (y)

Output:

['From:']

 

import re

x='From: Using the :character'

y=re.findall('^F.*:', x)

print (y)

Output:

['From:']

 

说明:在字符串'From:Using the :character' 中, 有两个: 号存在。 当要匹配以F开头,以: 号结尾的字符串时,GreedyMatching 会以Greedy 为原则找到尽可能长的匹配字符串。 而NON-Greedy Matching 不会像Greedy 那样去找尽可能长的串。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值