擅长:python、mysql、java
<p>如果数据始终采用该格式,并且假设每行都是不同的字符串,则可以使用:</p>
<pre><code>import re
strings = [
"552D3AE5|HellothisIsATest__wordIWant|someotherstuff|0",
"3685248S|HellomynameIsAlex__wordIWant2|someotherstuff|0",
"8963252A|HelloiAm25YearsOld__wordIWant3|someotherstuff|0"
]
for st in strings:
word_i_want = re.match(r'__([^|]*)', st).group(1)
</code></pre>
<p>这将在每个字符串中搜索两个下划线,然后搜索所有内容,直到找到一个垂直条为止。<code>group(0)</code>将是整个匹配,包括下划线,而<code>group(1)</code>只是<code>wordIWant</code>,因为我们将其括在括号中。你知道吗</p>
<p>编辑:
如果您的字符串只是一个大的块,则可以使用以下命令:</p>
<pre><code>import re
big_string =
"""552D3AE5|HellothisIsATest__wordIWant|someotherstuff|0
3685248S|HellomynameIsAlex__wordIWant2|someotherstuff|0
8963252A|HelloiAm25YearsOld__wordIWant3|someotherstuff|0"""
words_i_want = re.findall(r'__([^|]*)', big_string)
</code></pre>
<p>在本例中,<code>words_i_want</code>将是所需单词的列表。你知道吗</p>