正则表达式作业

一.获取字符串中:
a.所有的正整数
b.所有的负整数
c.所有的浮点数
d.所有的非负浮点数

#取出字符串里的数字 print(re.findall(r'[1-9]+', 'sww123kwe2lkd')) #取出所有负整数 print(re.findall(r'-{1}\d+', '-12,3,54,64,-9')) #所有的浮点数 print(re.findall(r'\-?\d+\.\d+', '-12.9,3.92,54.11,64,89,-9,-45.2')) #所有的非负浮点数 print(re.findall(r'\d+\.\d+', '-12.9,3.92,54.11,64,89,-9,-45.2'))

二、不定项选择题
  1. 能够完全匹配字符串“(010)-62661617”和字符串“01062661617”的正则表达式包括( a b d)
A. “(?\d{3})?-?\d{8}”
B. “[0-9()-]+”
C. “[0-9(-)]\d
D. “[(]?\d[)-]\d*”
  1. 能够完全匹配字符串“c:\rapidminer\lib\plugs”的正则表达式包括( b c)
    A. “c:\rapidminer\lib\plugs”
    B. “c:\rapidminer\lib\plugs”
    C. “(?i)C:\RapidMiner\Lib\Plugs” ?i:将后面的内容的大写变成小写
    D. “(?s)C:\RapidMiner\Lib\Plugs” ?s:单行匹配
  2. 能够完全匹配字符串“back”和“back-end”的正则表达式包括(a b c d )
    短路操作:前面的为真了,就不会再执行后边的操作
    A. “\w{4}-\w{3}|\w{4}” B. “\w{4}|\w{4}-\w{3}”
    C. “\S+-\S+|\S+” D. “\w\b-\b\w|\w*”
  3. 能够完全匹配字符串“go go”和“kitty kitty”,但不能完全匹配“go kitty”的正则表达式包括(a d)
    :\1就是重复前面第一个()/组合里面的内容
    :\2就是重复前面第二个()/组合里面的内容
    A. “\b(\w+)\b\s+\1\b”
    B. “\w{2,5}\s*\1”
    C. “(\S+) \s+\1”
    D. “(\S{2,5})\s{1,}\1”
  4. 【正则表达式作业】能够在字符串中匹配“aab”,而不能匹配“aaab”和“aaaab”的正则表达式包括( b c )
    A. “a*?b”
    B. “a{,2}b”
    C. “aa??b”
    D. “aaa??b”
三.观察下面双引号内的文本”中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民
族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信
仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品
《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男”
a. (此题为示范题)当使用正则表达式“中文名\s+(\S+)\s+”抽取美国总统奥巴马的中文名时,替换字符串“1”的赋值为需要抽取的中文名。 b. 当使用正则表达式“'外文名\s+(\S+\s+\S+\s+\S+\s+\S+)'_____________”抽取美国总统奥巴马的外文名时,替换字符串“1”的赋值为需要抽取的外文名。
c. 当使用正则表达式“_________________________________”抽取美国总统奥巴马的出生日期时,替换字符串“1”的赋值为需要抽取的出生日期。 d. 使用正则表达式“_______________________________”抽取美国总统奥巴马的职业时,替换字符串“1”的赋值为需要抽取的职业。
e. 使用正则表达式“_________________________________”抽取美国总统奥巴马的主要成就时,替换字符串“1”的赋值为需要抽取的主要成就。 f. 使用正则表达式“_________________________________”抽取美国总统奥巴马的妻子姓名时,替换字符串“1”的赋值为需要抽取的姓名。
import re #外文名 re_str='外文名\s+(\S+\s+\S+\s+\S+\s+\S+)' print(re.findall(re_str,'中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男')) #出生日期 re_str='出生日期\s+(\d{4}年\d月\d日)' print(re.findall(re_str,'中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男')) #职 业政治家、律师、总统 #职业 re_str='职\s+业(\S+)\s+' print(re.findall(re_str,'中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男')) #主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 #成就 re_str='主要成就(\S+\s+\S+\s+\S+\s+\S+)\s+' print(re.findall(re_str,'中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男')) #妻 子米歇尔·拉沃恩·奥巴马 #妻子姓名 re_str='妻 子(\S+)\s' print(re.findall(re_str,'中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男')) 结果: ['Barack Hussein Obama II'] ['1961年8月4日'] ['政治家、律师、总统'] ['美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登'] ['米歇尔·拉沃恩·奥巴马']

    推荐阅读