Python:如何提取2个常量子串之间的变量

Python: how to extract the variables between 2 constant substring

我正在尝试提取字符串中 2 个常量子字符串之间的变量。例如,

我想提取变量 Apple、Orange、Watermelon、Kiwi....13cups、14cups...19cups。我正在使用 re 表达式进入 $ 符号之间获取变量的第一步,但我没有得到任何结果。

任何人都可以就正确的表达式提出建议,或者是否有更好的提取方法?

谢谢。

import re

file = '$n$n$n$xa0$n$nSHOWALL$nSHOWALL%GROWTH$n$n$xa0$n$xa0$n$n$n$nApple$na$nOrange$n$nWatermelon$nKiwi$n$nBanana$nJackfruit$n$nGuava$na$nGrape$n$nPlum$na$nOrange$n$nCoconut$nWatermelon$n$n12cups$n13cups$n$n14cups$na$n15cups$n$n16cups$na$n17cups$n$n18cups$n19cups$n' 

found = re.findall(r'(?=$(.*?)$)',file)

print(found)

鉴于识别所需字符序列的规则不明确,我认为 RE 是不切实际的。毫无疑问,它 可以 完成,但这里有一个解决问题的快速方法:-

data = '$n$n$n$xa0$n$nSHOWALL$nSHOWALL%GROWTH$n$n$xa0$n$xa0$n$n$n$nApple$na$nOrange$n$nWatermelon$nKiwi$n$nBanana$nJackfruit$n$nGuava$na$nGrape$n$nPlum$na$nOrange$n$nCoconut$nWatermelon$n$n12cups$n13cups$n$n14cups$na$n15cups$n$n16cups$na$n17cups$n$n18cups$n19cups$n'


for token in data.split('$n'):
    if token not in ('SHOWALL%GROWTH', 'SHOWALL', '$xa0', 'a', ''):
        print(token)