Regex Python3正则表达式-从字符串间距未知的句子中提取未知子字符串

Regex Python3正则表达式-从字符串间距未知的句子中提取未知子字符串,regex,string,substring,character,python-3.7,Regex,String,Substring,Character,Python 3.7,我试图在一个句子中的两个子串之间提取一个未知的子串,它有一个标准的设计 示例: object Ball is located in row 8 objectballisLocatedINROw8 objectChairislocated in row 4 object CupboardisLocated in row 22 在上述句子中,陈述遵循如下特定模式: objectitem name位于行整数中 此外,子字符串可以有奇怪的大小写,如完全大写、完全小写或以不可预测的方式混合使用大

我试图在一个句子中的两个子串之间提取一个未知的子串,它有一个标准的设计

示例:

object Ball is located in row 8
objectballisLocatedINROw8
objectChairislocated in row 4
    object CupboardisLocated in row 22
在上述句子中,陈述遵循如下特定模式:

objectitem name位于行整数中

此外,子字符串可以有奇怪的大小写,如完全大写、完全小写或以不可预测的方式混合使用大写和小写(请参考上面的示例句子了解我的意思)

我的目标:

提取
项目名称
,其中
项目名称
可以是未知大小写中的任何未知字符串(上、下、两者混合)

我尝试了什么?

import re

task = "objectChairislocatedinrow8"
object = re.search(r'(\s)*object(\s)*[a-z]*(\s)*is(\s)*located(\s)*in(\s)*row(\s)*\d+(\s)*', 
task, re.IGNORECASE)

print(object)


Regex
“^*对象*([A-Za-z]+)*是。*'

它将单词与大写和小写单词匹配。它的工作原理是单词“IS”在中间,像这样或巴黎括号内[AZ-Z-Z] + +选择该组,以便以后可以使用。< /P>
import re

task = "objectChairislocatedinrow8"
object = re.search(r'^ *object *([A-Za-z]+) *is.*', 
task, re.IGNORECASE)

print(object.group(1))
输出:

Chair

您的正则表达式很好,只需删除空格周围的捕获组,并在字符串的
项名称
部分添加一个: