【问题标题】:Finding text between two delimiters在两个分隔符之间查找文本
【发布时间】:2021-01-16 18:02:47
【问题描述】:

我有一个字符串ABC_DEF_EFG_IJK

我需要提取两个分隔符之间的文本,但条件是 DEF_EFG 必须始终在一起。

我尝试过使用 split 方法,但它没有给出正确的上下文。

感谢您的帮助。

【问题讨论】:

  • 您的预期输出是什么?请附上您尝试过的代码。
  • 不清楚您要做什么。给定字符串的期望结果是什么? DEF_EFG必须在一起是什么意思?从字面上看,字母 DEFEFG 或中间组。 _ 会超过三个吗?尝试显示几个字符串和所需的结果。
  • 嗨,输出将是 DEF_EFG
  • 抱歉,英语不是我的母语。字符串为 ABC_DEF_EFG_IJK,我需要从字符串中提取输出为 DEF_EFG 的字符串。

标签: python regex string text delimiter


【解决方案1】:

在 Python 3+ 上试试这个:

letters = 'ABC_DEF_EFG_IJK'

splitted = letters.split('_')
final = f'{splitted[1]}_{splitted[2]}'

print(final)

你应该有:

DEF_EFG

如果你使用 Python 2:

# replace this line
final = f'{splitted[1]}_{splitted[2]}'

#with this line
final = '{}_{}'.format(splitted[1], splitted[2])

【讨论】: