擅长:python、mysql、java
<p>您可以尝试在CHEM、Math、HIST之后匹配零个或多个空白的正则表达式:</p>
<p><strong><code>(?<=CHEM|HIST)\s*|(?<=MATHS)\s*</code></strong></p>
<p>并使用<strong><code>re.sub</code></strong>替换为空白[<code> </code>]</p>
<p>见<a href="https://regex101.com/r/8oDU36/1" rel="nofollow noreferrer">Regex-demo</a></p>
<p><strong>Python资源:</strong></p>
<pre><code>import re
classes_list = ['CLASS 8B CHEM | MON | 10AM to 10:40AM',
' Rescheduled CLASS 8B MATHS | MON | 11AM to 11:40AM',
'CLASS 8B HIST | MON | 5PM to 5:40PM']
#regex-pattern
rePattern=re.compile("(?<=CHEM|HIST)\s*|(?<=MATHS)\s*")
classes_list=[rePattern.sub(' ',x) for x in classes_list]
print(classes_list)
</code></pre>
<p><strong>输出:</strong></p>
<p><code>['CLASS 8B CHEM | MON | 10AM to 10:40AM', ' Rescheduled CLASS 8B MATHS | MON | 11AM to 11:40AM', 'CLASS 8B HIST | MON | 5PM to 5:40PM']</code></p>