美文网首页
2018-08-04day-15作业

2018-08-04day-15作业

作者: BIGBOSS_93d6 | 来源:发表于2018-08-04 15:02 被阅读0次

    用正则表达式完成作业
    获取字符串中的:
    a、所有的正整数
    b、所有的负整数
    c、所有的浮点数
    d、所有的非负浮点数

    import re
    re_str=r'[1-9]\d{0,}'
    print(re.fullmatch(re_str,'8'))
    re_str=r'-[1-9]\d*'
    print(re.fullmatch(re_str,'-452'))
    re_str=r'-?[1-9]\d*\.\d*|-?\d\.\d*'
    print(re.fullmatch(re_str,'-0.4'))
    re_str=r'[1-9]\d*\.\d*|\d\.\d*'
    print(re.fullmatch(re_str,'98.54'))
    
    1. 能够完全匹配字符串串“(010)-62661617”和字符串串“01062661617”的正则表达式包括( B)

    A. “(?\d{3})?-?\d{8}”
    B. “[0-9()-]+”
    C. “[0-9(-)]\d”
    D. “[(]?\d[)-]\d
    2.能够完全匹配字符串串“c:\rapidminer\lib\plugs”的正则表达式包括(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:单⾏行行匹配
    3.能够完全匹配字符串串“back”和“back-end”的正则表达式包括(ABC ) 短路路操作:前面的为真了,就不会再执行后边的操作
    A. “\w{4}-\w{3}|\w{4}”
    B. “\w{4}|\w{4}-\w{3}”
    C. “\S+-\S+|\S+”
    D. “\w\b-\b\w|\w

    4.能够完全匹配字符串串“go go”和“kitty kitty”,但不不能完全匹配“go kitty”的正则表达式包括( AD)
    :\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”
    5.能够在字符串串中匹配“aab”,⽽而不不能匹配“aaab”和“aaaab”的正则表达式包括(BC)
    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.当使用正则表达式“ ”抽取美国总统奥巴马的外文名时,替换字符串串“$1”的赋值为需要抽取的外文名。

    c.当使用正则表达式“ ”抽取美国总统奥巴马的出生日期时,替换字符 串串“$1”的赋值为需要抽取的出生日期。

    d.使用正则表达式“ ”抽取美国总统奥巴马的职业时,替换字符串串“$1”的赋值为需要抽取的职业。

    e.使用正则表达式“ ”抽取美国总统奥巴马的主要成就时,替换字符 串串“$1”的赋值为需要抽取的主要成就。

    f.使用正则表达式“ ”抽取美国总统奥巴马的妻子姓名时,替换字符 串串“$1”的赋值为需要抽取的姓名。

    import re
    x='观察下面双引号内的文本”中文名 贝拉克·侯赛因·奥巴马 外文名 Barack Hussein Obama II 别 名 欧巴马 国 籍美国 民 族 德裔族 出生地 美国夏威夷州檀香山 出生日期 1961年8月4日 职 业政治家、律师、总统 毕业院校哥伦比亚大学,哈佛大学 信 仰新教 主要成就 1996年伊利诺伊州参议员 主要成就美国第56届、57届总统 2009年诺贝尔和平奖获得者 时代周刊年度风云人物2008、2011 任期内清除本·拉登 代表作品 《我相信变革》《我父亲的梦想》《无畏的希望》 所属政党美国民主党 血 型 AB型 学 院西方学院 妻 子米歇尔·拉沃恩·奥巴马 性 别 男”'
    result=re.findall(r'中文名\s+(\S+)\s+',x)
    print(result)
    result2=re.findall(r'外文名\s+(\S+)\s+(\S+)\s+(\S+)\s+',x)
    print(result2)
    result3=re.findall(r'出生日期\s+(\S+)\s+',x)
    print(result3)
    result4=re.findall(r'职\s+业(\S+)\s+',x)
    print(result4)
    result5=re.findall(r'主要成就\s+(\S+)|主要成就(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+',x)
    print(result5)
    result6=re.findall(r'妻\s+子(\S+)\s+',x)
    print(result6)
    

    相关文章

      网友评论

          本文标题:2018-08-04day-15作业

          本文链接:https://www.haomeiwen.com/subject/wxrmvftx.html