在python中使用正则表达式查找包含特定单词的部分文本

时间:2018-05-13 12:07:22

标签: python regex

我需要做一些事情(使用python):

  • 检查json文件中是否出现单词
  • 找到该文件的一部分,该部分需要以其他单词开头和结尾

我对第一点没有问题,但第二点是麻烦。我试图使用正则表达式

startWord.+ foundWord +.endingWord

但它不起作用。更重要的是,我使用基本的open()函数来打开json文件。但对于该计划,它被视为单行。我该怎么做才能找到一些线或部分线?

我在python中比较新,希望问题不是很傻:)提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

如果您只需要实际出现加上一些填充,您可以简单地使用str.index()来查找开始索引,确定一些填充result_padding = 10并最终累加目标字符串的长度。

import re

target_beginning = "hello"
target_string = "asd"
target_ending = "world"

my_regex = "("+target_beginning+".*"+target_string +".*"+target_ending+")"

json_string = "{ someArr: ['hello', 'my', 'name', 'is'], a: 'asd', b: 'world'}"

if re.search(my_regex, json_string, re.IGNORECASE):
      #etcetc...

我强烈推荐此网站进行正则表达式学习 - RexExr

进一步了解re python library