任务描述
本关任务:使用正则表达式的方法编写一个小程序。该程序可以:

  1. 匹配到该字符串是否以educoder开头,并输出该字符串的位置;
  2. 匹配到该字符串是否以educoder结尾,并输出该字符串的位置。

相关知识
为了完成本关任务,你需要掌握:

  1. 正则表达式字符串开始的使用方法;

  2. 正则表达式字符串结束的使用方法。

字符串的开始和结束
在日常生活中,一个事情的开始与结束都是一件比较重要的事情,在字符串匹配的过程中也是如此,字符串的开始与结束式一个重要的特征。比如我们要获取判断字符串是否以python开头,是否以python结尾。
对于这种情况,之前匹配方法就有点不够用了,因此在正则表达式中 用^ 可以表示开始,用 $表示结束,示例如下:

a = re.search(r'^python', 'python is easy')
b = re.search(r'python$', 'python is easy')
c = re.search(r'^python', 'i love python')
d = re.search(r'python$', 'i love python')
print(a.span())
print(b)
print(c)
print(d.span())

执行输出结果如下:

(0, 6)
None
None
(7, 13)

可以发现,在上述例子中,python is easy和i love python都存在python字符串,但是一个在开头一个在结尾,因此变量a和变量d都匹配到了信息。其他则无法匹配到信息。
编程要求
请仔细阅读右侧代码,根据方法内的提示,在Begin - End区域内进行代码补充,具体任务如下:

  1. 匹配以educoder开头的字符串,并存储到变量 a;
  2. 匹配以educoder结束的字符串,并存储到变量 b。

测试说明
补充完代码后,点击测评,平台会对你编写的代码进行测试,当你的结果与预期输出一致时,即为通过。
测试输入:educoder can help you;
预期输出:

(0, 8)None

测试输入:i love educoder;
预期输出:

None
(7, 15)

测试输入:you can make educoder better
预期输出:

None
None
# coding=utf-8import reinput_str = input()# 1、编写获取到以educoder开头的正则,并存储到变量a
########## Begin ##########
a = re.search(r'^educoder',input_str)  ########## End ##########
if a is not None:print(a.span())
else:print(a)# 2、编写获取到以educoder结束的正则,并存储到变量b
########## Begin ##########
b = re.search(r'educoder$',input_str)  ########## End ##########
if b is not None:print(b.span())
else:print(b)

第5关:字符串的开始与结束相关推荐

  1. 第5关 字符串的基本操作

    需求=过去困惑+当下渴望+未来希望 --实干<实干日记> 第5关 字符串的基本操作 5-1 为什么len函数获取中文字符串长度有问题? 5-2 什么是转义符? 5-3 子串查询.子串统计. ...

  2. python使用正则化检查字符串的起始和结束字符相同

    python使用正则化检查字符串的起始和结束字符相同 #python使用正则化检查字符串的起始和结束字符相同 # Python program to check if a string starts ...

  3. python字符串以什么标志结束_python字符串结束符

    python字符串结束符的更多内容_CSDN博客 2016-05-22 python 字符串末尾换行符处理 - qiqiaiairen的博客 - CSDN博... 找到以"imooc"开头和结尾的字符 ...

  4. 键盘输入字符串,Ctrl+Z结束

    Java中从键盘输入字符串的方式: 1.使用Scanner (1)in.useDelimiter("\n")和str = in.nextLine()配合使用时,可以首次输入空行 i ...

  5. c语言输入字符串以井号结束,想学好C语言必须得先学会自救(命令行必须以井号“#”开头 最后不能加分号“;”结尾)...

    想学好C语言必须得先学会自救(命令行必须以井号"#"开头 最后不能加分号";"结尾) 2018-11-24 [[编程学习]想学好C语言,必须得先学会自救]htt ...

  6. sed实现多行匹配-从字符串a所在行匹配到字符串b所在行结束

    实现取出匹配begin的行直到匹配到end字符的行结束 sed -n '/begin/,/end/p' 1.txt 转载于:https://www.cnblogs.com/sisier/p/44508 ...

  7. c语言输入字符串以井号结束,C语言的井号(#)特殊用法(#define)

    一:特殊的字符串宏 [cpp] #define A(x) T_##x #define B(x) #@x #define C(x) #x 我们假设x=1, 则上面的宏定义会被解释成以下的样子 A(1)- ...

  8. c语言输入字符串以井号结束,C语言中两个井号“##”和一个井号#的使用方法[转]...

    最近看了一些dsp的库函数,发现了一些使用##的宏定义,以前没有用到过,后来差了些资料,学习了##的用法. 例如下面的语句: #define  CSL_FMK(PER_REG_FIELD, val) ...

  9. 黄聪:C#用正则表达式获得指定开始和结束字符串中间的一段文本

    /// <summary> /// 获得字符串中开始和结束字符串中间得值 /// </summary> /// <param name="str"&g ...

最新文章

  1. 小程序订阅消息 订阅消息开发
  2. android 表示空字符串,Android Logcat获取空字符串时非常奇怪的行为
  3. NanoPi NEO Air使用十五:使用V4L2驱动USB摄像头
  4. java 数据结构实例_数据结构(Java)——栈的实例
  5. 网络空间站是计算机,超级病毒或入侵国际空间站生命维持计算机
  6. linux 系统时间是在哪里记录的,Linux系统如何记录时间
  7. c语言 srand time 0,c++ 随机数 srand(time(0)) 用法 | 求索阁
  8. (转)C# WebApi 身份认证解决方案:Basic基础认证
  9. jvm线程分析命令_JVM:如何分析线程转储
  10. linux目标机无法连接到网络,linux 安装了xunsearch服务,但是PHP连接显示:目标计算机积极拒绝...
  11. Maven学习总结(34)——Maven settings.xml配置解读
  12. Pipenv – 超好用的 Python 包管理工具 1
  13. Qt3D学习之键盘交互
  14. 论文英文参考文献[10]的时候后面多空格_英语论文写作中空格及特殊符号的正确使用方法...
  15. excel培训机构_不会excel的,不是好地产人
  16. 姿态估计4-06:voxelpose(多视角3D人体姿态估算)-源码无死角解析(1)-训练代码总览
  17. 用GDAL打开从USGS下载的img影像文件
  18. resolv.conf文件
  19. OCP大会 | 腾讯开放光网络平台(附PDF)
  20. mysql long varchar2_long类型字段转换成varchar2类型

热门文章

  1. 基于GAN的恶意软件对抗样本生成(Python实现)
  2. 如何对身份证号码进行校验?
  3. 《直播从零开始》SRS 带宽测试
  4. 科学计算机哪个是开平方,开方计算器-什么样的计算器能开平方,请举计算器的符号来 – 手机爱问...
  5. 塔米狗知识|2022中央企业(央企)名单
  6. 编译,移植DDWRT到到belkin8230
  7. python改变excel单元格字体和颜色_Python中openpyxl怎样改变字体和颜色
  8. 「Adobe国际认证」三大科技巨头LOGO的演变,能看懂,绝不小白
  9. 使用BootStrap进行响应式布局案例
  10. vs2017开发android平板,2018 iPad vs. 2017 iPad跑分对比