day15-作业

2018-08-03  本文已影响0人  七一欧

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

# ⼀.获取字符串中:
# a.所有的正整数
# b.所有的负整数
# c.所有的浮点数
# d.所有的⾮负浮点数
import re
"""
1.+-
2.4612 r'[1-9]\d*'
3.232.00 
"""
#取一个字符串中所有的数字
re_str = r'[+-]?[1-9]\d*.\d|[+-]?0\.\d+|[+-]?[1-9]\d*'
str1 = 'fds+544sdf54.0sdf87f-95s'
allnumber = re.findall(re_str,str1)
print(allnumber)

# a.取所有的正整数
print('所有的正整数',end=':')
for number in allnumber:
    if not ('.'in number or '-' in number):
        print(number,end='  ')
# b.取所有的负整数
print('\n所有的负整数',end=':')
for number in allnumber:
    if '-' in number and '.'not in number:
        print(number,end='  ')

# 取所有的浮点数
print()
print(re.findall(r'[+-]?[1-9]\d*\.\d+|[+-]?0\.\d+','dsds0.23ds-23.6dscx0.00'))

['+544', '54.0', '87', '-95']
所有的正整数:+544  87  
所有的负整数:-95  
['0.23', '-23.6', '0.00']

Process finished with exit code 0

⼆、不定项选择题

  1. 能够完全匹配字符串“(010)-62661617”和字符串“01062661617”的正则表达式包括(ABD)
    A. “((?\d{3})?-?\d{8}”
    B. “[0-9()-]+”
    C. “[0-9(-)]\d”
    D. “[(]?\d[)-]\d*”
  2. 能够完全匹配字符串“c:\rapidminer\lib\plugs”的正则表达式包括( BC)
    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”的正则表达式包括(ABCD ) 短路操作:前⾯的为真了,就不会再执⾏后边的操作
    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”的正则表达式包括(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. 当使⽤正则表达式“[a-zA-Z]+\s[a-zA-Z]+\s[a-zA-Z]+\s\S+”抽取美国总统奥巴⻢的外⽂名时,替换字符串“$1”的赋值为需要抽取的外⽂名。
    c. 当使⽤正则表达式“出生日期\s+(\S+)\s”抽取美国总统奥巴⻢的出⽣⽇期时,替换字符串“$1”的赋值为需要抽取的出⽣⽇期。
    d. 使⽤正则表达式“职\s+业(\S+)\s+”抽取美国总统奥巴⻢的职业时,替换字符串“$1”的赋值为需要抽取的职业。
    e. 使⽤正则表达式“主要成就\s+(\S+)\s+主要成就(\S+)\s(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+”抽取美国总统奥巴⻢的主要成就时,替换字符串“$1”的赋值为需要抽取的主要成就。
    f. 使⽤正则表达式“妻\s+子(\S+)\s+”抽取美国总统奥巴⻢的妻⼦姓名时,替换字符串“$1”的赋值为需要抽取的姓名。
上一篇下一篇

猜你喜欢

热点阅读