Python 3 正则表达式 - 从字符串之间未知间距的句子中提取未知子字符串
Python 3 Regex - Extracting an unknown substring from a sentence with unknown spacing between strings
我正在尝试提取一个句子中两个子串之间的未知子串,它具有标准设计。
示例:
object Ball is located in row 8
objectballisLocatedINROw8
objectChairislocated in row 4
object CupboardisLocated in row 22
在上面的句子中,陈述遵循如下特定模式:
object<optional spacing>item-name<optional spacing>is<optional spacing>located<optional spacing>in<optional spacing>row<optional spacing>some integer
子字符串也可以有奇怪的情况,如完全大写、完全小写或以不可预测的方式混合大小写(请参阅上面的例句以了解我的意思)。
我的目标:
提取 item-name
其中 item-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)
正则表达式:'^ *object *([A-Za-z]+) *is.*'
它匹配包含大写和小写单词的单词。它也有效是单词中间有 'is',例如 this 或 paris [A-Za- 周围的括号z]+ select 该组以便稍后使用。
import re
task = "objectChairislocatedinrow8"
object = re.search(r'^ *object *([A-Za-z]+) *is.*',
task, re.IGNORECASE)
print(object.group(1))
输出:
Chair
我正在尝试提取一个句子中两个子串之间的未知子串,它具有标准设计。
示例:
object Ball is located in row 8
objectballisLocatedINROw8
objectChairislocated in row 4
object CupboardisLocated in row 22
在上面的句子中,陈述遵循如下特定模式:
object<optional spacing>item-name<optional spacing>is<optional spacing>located<optional spacing>in<optional spacing>row<optional spacing>some integer
子字符串也可以有奇怪的情况,如完全大写、完全小写或以不可预测的方式混合大小写(请参阅上面的例句以了解我的意思)。
我的目标:
提取 item-name
其中 item-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)
正则表达式:'^ *object *([A-Za-z]+) *is.*'
它匹配包含大写和小写单词的单词。它也有效是单词中间有 'is',例如 this 或 paris [A-Za- 周围的括号z]+ select 该组以便稍后使用。
import re
task = "objectChairislocatedinrow8"
object = re.search(r'^ *object *([A-Za-z]+) *is.*',
task, re.IGNORECASE)
print(object.group(1))
输出:
Chair