str.index()与str.find()比较
def extract_from_tag(tag,line):
opener = "<" + tag + ">"
closer = "</" + tag + ">"
try:
i = line.index(opener)# i = 7
start = i + len(opener) # start = 7 + 5 =12
j = line.index(closer,start) #j =16
return line[start:j] # retrun line[12:16]
except ValueError:
return None
a = extract_from_tag("red","what a <red>reosedf</red> this is")
print(a)
print(len(a))
str.index()
def extract_from_tag(tag,line):
opener = "<" + tag + ">"
closer = "</" + tag + ">"
i = line.find(opener) # i = 7
if i != -1:
start = i + len(opener) #start = 7+5=12
j = line.find(closer,start) # j = 19
if j !=-1:
return line[start:j] #line[12:19]
return None
a = extract_from_tag("red","what a <red>rose</red> this is")
print(a)
str.find()
如果需要在某个字符串中找到另一个字符串所在的位置,有两种方法:
- 使用str.index()方法。该方法返回子字符串的索引位置,或者在失败时产生一个ValueError异常
- 使用str.find()方法。该方法返回子字符串的索引位置,或者在失败时返回-1
这两种方法都要把寻找的字符串作为第一个参数,还可以有两个可选的参数。其中第二个参数是待搜索的字符串的起始位置,第三个则是其终点位置
str.index()与str.find()比较的更多相关文章
- char str[]和char *str的区别
1.http://blog.csdn.net/szchtx/article/details/10396149 char ss[]="C++"; ss[0]='c'; ...
- 【转】char *str 和 char str[]的区别
char str[] = "abcd";定义了一个局部字符数组,返回它的地址肯定是一个已经释放了的空间的地址. 此函数返回的是内部一个局部字符数组str的地址,且函数调用完毕后 此 ...
- char str[] 与 char *str的区别详细解析
char* get_str(void) { char str[] = {"abcd"}; return str; } char str[] = {"abcd"} ...
- 刨根问底儿 -- intVal($str) 跟 (int) $str 的运算结果有什么区别
intVal($str) 跟 (int) $str 都是把其他类型的变量转化为int型变量的方式,这么多年来我一直森森滴怀疑它们的运算结果在某些条件下会有区别.对于我的疑问,文档里也没有多说(或者我没 ...
- 290.单词模式。给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。(c++方法)
题目描述: 给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式. 这里的遵循指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之 ...
- java 去最后一位字符 str.substring(0,str.length()-1)
String str = " 中国, 美国 , 意大利 ";String[] arr = str.split(",");for(int i1 =0;i1< ...
- Python:str.ljust()、str.rjust()、str.center()函数
str.ljust().str.rjust().str.center()函数 功能:调整字符串站位宽度,并确定字符串对齐方式: #可以用其它字符填充字符: #字符串长度 = 字符串个数(包含空格.标点 ...
- 由 var str = 'hello world' str.attr ='666'; 到包装类型
近期有些小伙伴在公司的一道面试题踩了坑, 今天特地跟大家一起分享下: 原题如下: var str = 'hello world'; str.attr = '666'; console.log(str ...
- 给定一个字符串str,将str中连续两个字符为a的字符替换为b(一个或连续超过多个字符a则不替换)
需求:给定一个字符串str,将str中连续两个字符为a的字符替换为b(一个或连续超过多个字符a则不替换) 如: a 不替换 b 不替换 ab 不替换 ba 不替换 aba 不替换 aab 替换为 ...
随机推荐
- [剑指Offer]58-翻转字符串
题目一 翻转单词顺序 题意 输入一个英文句子,翻转句子中的单词的顺序,但单词内自负的顺序不变.标点符号和普通字母一样处理. 例: 输入:"I am a student." 输出:& ...
- 线特征---LSD and LBD程序运行(一)
最近在看有关特征提取的线特征,暑期就看了相关的论文:<基于点线综合特征的双目视觉SLAM方法_谢晓佳>,最近呢,把里面有关线特征提取LSD和描述子LBD的代码跑了一遍,记录如下: [1]L ...
- echarts柱状图图例不显示的问题
如果想要图例有效果,legend中数据要和series中name的值保持一致,切记切记,这是我曾经遇到的坑,不保持一致是没有效果的
- <history> 特别报道:Google离职富翁们都在干什么?
特别报道:Google离职富翁们都在干什么? 时间:2008-01-23 10:16:47作者:CNET科技资讯网 本文关键词:Google CNET科技资讯网1月23日国际报道 假如你拥有1千万或1 ...
- 10.31JS日记
this问题 (1)this是js的一个关键字,指定一个对象,然后替代this: 函数中的this指向行为发生的主体,函数外的this都指向window,没有意义 (2)函数内的this跟函数在什么环 ...
- 64位Win7系统下vs2010调试无法连接oracle解决办法
具体的解决办法如下: 1.先将WebDev.WebServer20.EXE和WebDev.WebServer40.EXE文件从Program Files (x86)目录中拷贝出来放到c:\dev目录中 ...
- MacDev.GetArchOfLibrary
1. static library How to check target architecture of a static library http://changhoward.blogspot.c ...
- idea部署tomcat-404错误
今天在部署数据质量web工程在tomcat后,访问时报404错误,在网上搜了很多相关配置,也都是一步一步来的 Application Context 也配置好了,Artifact也添加了,就是访问不了 ...
- JS浏览器Session存取数据
vm.indexdata.indexId = id; vm.indexdata.indexName = name; var tempIndex = JSON.stringify(vm.indexdat ...
- VSFTPD虚拟用户配置
转载:http://www.cnblogs.com/allenjin/archive/2011/12/03/2274542.html 以下操作验证OK!!!! VSFTPD虚拟用户配置 VSFTP = ...