我有一根绳子。如何删除某个字符后的所有文本?(在这种情况下……) 之后的文字将…这就是为什么我想删除某一个字符之后的所有字符。


当前回答

这是在python 3.7工作到我 在我的情况下,我需要删除后点在我的字符串可变费用

费用= 45.05 Split_string = fees.split(".", 1)

[0] . Substring = split_string

打印(字符串)

其他回答

import re
test = "This is a test...we should not be able to see this"
res = re.sub(r'\.\.\..*',"",test)
print(res)

输出:“这是一个测试”

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

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)

在你的分离器上最多分裂一次,然后取出第一块:

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

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

这是在python 3.7工作到我 在我的情况下,我需要删除后点在我的字符串可变费用

费用= 45.05 Split_string = fees.split(".", 1)

[0] . Substring = split_string

打印(字符串)

假设你的分隔符是'…',但它可以是任何字符串。

text = 'some string... this part will be removed.'
head, sep, tail = text.partition('...')

>>> print head
some string

如果分隔符未找到,head将包含所有原始字符串。

分区函数是在Python 2.5中添加的。

S.partition(sep) ->(头,sep,尾) 搜索S中的分隔符sep,并返回它之前的部分, 分离器本身和后面的部分。如果分隔符不是 found返回S和两个空字符串。