gpt4 book ai didi

string - 用字符串变量中的一个新行替换多个空行

转载 作者:行者123 更新时间:2023-12-05 01:45:17 26 4
gpt4 key购买 nike

所以我有一个很长的字符串,其中包含我只显示其中一部分的股票代码。

"\n'OPHT'\n'GALE'\n'CEMP'\n'TKAI'\n'ANTH'\n'ADPT'\n\n\n'CYTR'\n'NVAX'\n'MRTX'\n'IMGN'\n'OVAS'\n'AVGR'\n'DVAX'\n'INFI'\n'TNDM'\n'FNBC'\n\n\'CVRS'\n'CLDX'\n'CIE'\n'ARWR'\n'CYH'\n'RGLS'\n'VSLR'\n'IMDZ'\n'ITCI'\n\n\n\n\n'MDCA'

我想去掉“OPHT”之前的第一个\n(新行),并将组合在一起的多个换行符减少为一个新行。

如您所见,组合在一起的多个换行符的数量不是恒定的,从两个到五个不等(在原始字符串中甚至更多)。

我似乎不能只使用简单的 `str.replace('\n', '') 方法,因为它会去掉所有的换行符,将所有的股票代码聚集在一起(我想要一个换行符之后每个代码)我查看了字符串文档,但找不到可以让我干净利落地做我想做的事情的 str 方法。

有什么建议吗?

谢谢。

最佳答案

好的,我明白了:

如果 x 是我的字符串变量,那么

import re


x = re.sub(r'\n{2, 10}', '', x) # \n is new line, {2,10} is the range of occurences of the newline that I'm searching for.

这解决了除一个异常(exception)之外的问题。在某些情况下,尽管我只想要一个换行符,但它会删除所有换行符。这导致某些代码像这样聚集在一起:

'大风''CEMP'

所以我用了另一个正则表达式来解决这个问题

import re


x = re.sub(r"''", "'\n'", x)

现在大部分情况下一切看起来都很好。

关于string - 用字符串变量中的一个新行替换多个空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42427922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com