[python]正则表达式脑筋急拐弯-练习1

print("Hello World!")
import re

#1、目标匹配获得 =等号后的每个内容
elements='ID=O00001-RA;Parent=O00001;'

result=re.findall('=(\S+);',elements)
#\S  大写的S 表示非 空格,小写s表示空格;大写的S 几乎可以表示很多特殊符号
#+ 表示一个到多个,匹配时,程序会尽可能多的匹配,叫做贪婪匹配
print(result)


result=re.findall('=(\S+?);',elements)
print(result)


#2、加大难度,末尾没有分号,怎么办
elements='ID=O00001-RA;Parent=O00001'
result=re.findall('=([^;]+)',elements)
#第二种状态;我们要换个思路,;分号 总是捣乱,那么我们把分号排除掉
#[^ 填写不要的东西 ],这种就是不要什么放进去就认为不要中作为匹配,表示除了;分号以为的任意字符
print(result)

你可能感兴趣的:([python]正则表达式脑筋急拐弯-练习1)