我正在使用Python,并希望编写一个代码,将乳胶代码分成几个部分。 我想在|
分割文本Hello | the | formula | is |$ \int_{-\infty}^{\infty}f(x) - \sum_{n=0} x^{n} $ | and | it | is | a | good | formula, since |$ \delta -\gamma = \int \Omega dx $ |.
成单个单词和整个公式。 结果应该是这样的:
['Hello' , 'the' , 'formula' , 'is' , '$\int_{\delta}^{\gamma} - \sum_{\epsilon} x^{\epsilon}$' , 'and' ...]
到目前为止,我使用了re.findall函数,但它只提取了数学公式。
祝你好运
编辑:我的问题不够明确。我想要开头的文本看起来像Hello,公式是$\int_{-\infty}^{\infty} f(x)-...$
,没有任何|迹象。 |显示我想将文本拆分为不同的字符串。最好的问候
答案 0 :(得分:0)
而不是re.findall
,请使用re.split
:
s = "Hello | the | formula | is |$ \int_{-\infty}^{\infty}f(x) - \sum_{n=0} x^{n} $ | and | it | is | a | good | formula, since |$ \delta -\gamma = \int \Omega dx $ |."
import re
final_s = re.split('\s\|\s', s)
输出:
['Hello', 'the', 'formula', 'is', '$ \\int_{-\\infty}^{\\infty}f(x) - \\sum_{n=0} x^{n} $', 'and', 'it', 'is', 'a', 'good', 'formula, since', '$ \\delta -\\gamma = \\int \\Omega dx $', '.']
答案 1 :(得分:0)
re.findall('\w+|\$[^\$]*\$', yourString)
应该做你想做的事。