为了账号安全,请及时绑定邮箱和手机立即绑定

带有“;”的任意数量的数字组的正则表达式 和分组之间的“\s”

带有“;”的任意数量的数字组的正则表达式 和分组之间的“\s”

宝慕林4294392 2021-06-14 17:19:58
我有以下代码根据下面概述的情况提取给定字符串中的第一组和最后一组数字。它有效,但似乎不是最佳的:import re# case 1pattern = '\d+\ \d+'string = 'Hello 999 888999'test = re.findall(pattern, string, flags=0)[0].split()print('{0}, {1}'.format(test[0], test[len(test)-1]))# case 2pattern = '\d+\ \d+;\d+ \d+'string = 'How are things 999 888999;222 444'test = re.findall(pattern, string, flags=0)[0].split()print('{0}, {1}'.format(test[0], test[len(test)-1]))# case 3pattern = '\d+\ \d+;\d+ \d+;\d+ \d+'string = 'It is nice 999 888999;222 444;33 55'test = re.findall(pattern, string, flags=0)[0].split()print('{0}, {1}'.format(test[0], test[len(test)-1]))# case 4pattern = '\d+\ \d+;\d+ \d+;\d+ \d+;\d+ \d+'string = 'Please help yourself 999 888999;222 444;33 55;44 6661'test = re.findall(pattern, string, flags=0)[0].split()print('{0}, {1}'.format(test[0], test[len(test)-1]))这4种情况是:任意数量的单词后跟数字后跟空格后跟数字任意数量的单词后跟数字后跟空格后跟以“;”分隔的数字 后跟空格后跟数字任意数量的单词后跟数字后跟空格后跟以“;”分隔的数字 后跟空格后跟以“;”分隔的数字 后跟空格后跟数字等等。关于如何一口气做到这一点的任何建议?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 161 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号