Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中查找字符串中单词完全匹配的所有位置_Python_Re - Fatal编程技术网

在python中查找字符串中单词完全匹配的所有位置

在python中查找字符串中单词完全匹配的所有位置,python,re,Python,Re,我试图找到文本中给定单词(类型字符串)的所有完整实例的所有起始索引 例如: word=“黑客” text=“安全黑客是指探索突破防御和利用计算机系统或网络弱点的方法的人。黑客的动机可能有多种,如利润、抗议、信息收集、[2]挑战、娱乐、[3]或者评估系统弱点,以帮助制定针对潜在黑客的防御措施。围绕黑客而形成的亚文化通常被称为“地下计算机” 输出将为:[11] 我使用了finditer方法,但它返回了错误的索引。要获得整个单词的所有结果,可以在正则表达式模式中使用\b词缀 word=“黑客” tex

我试图找到文本中给定单词(类型字符串)的所有完整实例的所有起始索引

例如:

word=“黑客”

text=“安全黑客是指探索突破防御和利用计算机系统或网络弱点的方法的人。黑客的动机可能有多种,如利润、抗议、信息收集、[2]挑战、娱乐、[3]或者评估系统弱点,以帮助制定针对潜在黑客的防御措施。围绕黑客而形成的亚文化通常被称为“地下计算机”

输出将为:[11]


我使用了finditer方法,但它返回了错误的索引。

要获得整个单词的所有结果,可以在正则表达式模式中使用
\b
词缀

word=“黑客”
text=“”安全黑客是指探索突破防御和利用计算机系统或网络弱点的方法的人。黑客的动机可能有多种,如利润、抗议、信息收集、[2]挑战、娱乐、[3]或评估系统弱点,以帮助制定防范潜在黑客的措施。围绕黑客而形成的亚文化通常被称为“地下计算机”
pattern=re.compile(r'\b'+word+r'\b')
对于re.finditer中的m(模式、文本):
idx=m.start(0)
打印(idx,文本[idx:idx+len(word)])
我们得到了正确的输出

11黑客


你是对的,我错了。我编辑了问题。您是否阅读了我的回答,并按照我的建议尝试使用FindItemer?是的,并且输出:[11346394]不正确。正确的输出必须是:[11]索引346和394是文本中“黑客”一词的起始索引。我只想要文本中“黑客”一词的起始索引我明白你的要求了,编辑了我的回复