繁体   English   中英

如何在数字后添加换行符?

[英]How to add a line break after a number?

我的 Python 知识有限,所以我在解决这个问题时遇到了很多麻烦。

从 pdf 文件中提取文本并进行小清理后,我得到以下结果:

"BARRINE QLD 4872ARCHDALE VIC 3475ARCHDALE JUNCTION VIC 3475ARCHER NT 0830ARCHER RIVER QLD 4892"这是来自更大结果的小样本!

有没有办法在数字后添加换行符? 所以,而不是上面的字符串,我会有类似的东西:

'BARRINE  QLD 4872',  
'ARCHDALE  VIC 3475'

我尝试阅读有关此的不同文章,但也许由于我缺乏知识,我根本无法弄清楚!

这不是最优雅的解决方案,但这样的事情可能会奏效:

string = "BARRINE  QLD 4872ARCHDALE  VIC 3475ARCHDALE JUNCTION  VIC 3475ARCHER  NT 0830ARCHER RIVER  QLD 4892"

def split_at_numbers(string):
    char_at = 0
    temp_str = ""
    out = []
    while char_at < len(string):
        temp_str += string[char_at]
        try:
            if string[char_at].isnumeric() and not string[char_at + 1].isnumeric():
                out.append(temp_str)
                temp_str = ""
        except IndexError:
            out.append(temp_str)
        char_at += 1
    return out

print(split_at_numbers(string))

# output: ['BARRINE  QLD 4872', 'ARCHDALE  VIC 3475', 'ARCHDALE JUNCTION  VIC 3475', 'ARCHER  NT 0830', 'ARCHER RIVER  QLD 4892']

上面的循环遍历每个字符,并检查字符是否是一)数字和二)不跟数字。 如果这两个条件为真,那么我们将该部分和 go 拆分为该字符串的下一部分。 我们将每个部分存储到最后返回的列表中。

从那里开始,数据应该很容易处理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM