小编典典

如何删除python中特定字符之后的所有字符?

all

我有一个字符串。如何删除某个字符后的所有文本?( 在这种情况下...
之后的文本会 ... 改变,所以我这就是为什么我想删除某个字符之后的所有字符。


阅读 61

收藏
2022-06-24

共1个答案

小编典典

最多在分隔符上拆分一次,并取第一块:

sep = '...'
stripped = text.split(sep, 1)[0]

你没有说如果分隔符不存在会发生什么。在这种情况下,这和Alex的解决方案都将返回整个字符串。

没有正则表达式(我认为这是你想要的):

def remafterellipsis(text):
  where_ellipsis = text.find('...')
  if where_ellipsis == -1:
    return text
  return text[:where_ellipsis + 3]

或者,使用正则表达式:

import re

def remwithre(text, there=re.compile(re.escape('...')+'.*')):
  return there.sub('', text)
2022-06-24