擅长:python、mysql、java
<p>对lsit的每个值使用带单词边界的<a href="http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.str.findall.html" rel="nofollow noreferrer">^{<cd1>}</a>,然后通过<a href="http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.str.join.html" rel="nofollow noreferrer">^{<cd2>}</a>连接在一起:</p>
<pre><code>pat = '|'.join(r"\b{}\b".format(x) for x in List_to_map)
df['Values'] = df['String'].astype(str).str.findall(pat).str.join('+')
print (df)
Id String Values
0 1 JHA PQR STO KJAN JHA+PQR+STO
1 2 LKS JHA PLA; NIYM LKS+JHA
2 3 LMA\KHA HYS,KNSN LMA
3 4 JHA, PQR STO KJAM JHA+PQR+STO
4 5 JHA PQR|STO/KJAOP JHA+PQR+STO
</code></pre>