Amgalang 发表于 2022-8-7 10:48:12

一行数据的split求助

您好,

我有多行数据的.txt文件,示例如下:
1.1.1.1.2.2.4.1 ᠨᠠᠰᠤ ᠠᠬ᠎ᠠ
1.1.1.1.2.2.4.1.1 ᠠᠬ᠎ᠠ ᠂ ᠪᠡᠷᠭᠡᠨ@ᠬᠠᠳᠠᠮ ᠠᠬ᠎ᠠ ᠂ ᠬᠦᠷᠭᠡᠨ ᠠᠬ᠎ᠠ ᠂ ᠮᠦᠷᠭᠦᠭᠦᠯᠦᠭᠰᠡᠨ ᠠᠬ᠎ᠠ ᠂ ᠪᠦᠯᠦ ᠠᠬ᠎ᠠ ᠂ ᠭᠠᠯ ‍ᠤᠨ ᠠᠬ᠎ᠠ ᠂ ᠬᠠᠳᠠᠮ ᠪᠡᠷᠭᠡᠨ ᠂ ᠶᠡᠬᠡ ᠪᠡᠷᠭᠡᠨ

我想得到的结果是,在一行数据中的数字最后面加上个#符号,希望的结果如下:
1.1.1.1.2.2.4.1# ᠨᠠᠰᠤ ᠠᠬ᠎ᠠ
1.1.1.1.2.2.4.1.1# ᠠᠬ᠎ᠠ ᠂ ᠪᠡᠷᠭᠡᠨ@ᠬᠠᠳᠠᠮ ᠠᠬ᠎ᠠ ᠂ ᠬᠦᠷᠭᠡᠨ ᠠᠬ᠎ᠠ ᠂ ᠮᠦᠷᠭᠦᠭᠦᠯᠦᠭᠰᠡᠨ ᠠᠬ᠎ᠠ ᠂ ᠪᠦᠯᠦ ᠠᠬ᠎ᠠ ᠂ ᠭᠠᠯ ‍ᠤᠨ ᠠᠬ᠎ᠠ ᠂ ᠬᠠᠳᠠᠮ ᠪᠡᠷᠭᠡᠨ ᠂ ᠶᠡᠬᠡ ᠪᠡᠷᠭᠡᠨ
(数字在每行的最开始处)

希望得到帮助,谢谢您。

Amgalang 发表于 2022-8-7 10:50:57

上面的乱码了,在此更正。请大家看这个:

您好,

我有多行数据的.txt文件,示例如下:
1.1.1.1.2.2.4.1AAA
1.1.1.1.2.2.4.1.1 AA@BB

我想得到的结果是,在一行数据中的数字最后面加上个#符号,希望的结果如下:
1.1.1.1.2.2.4.1#AAA
1.1.1.1.2.2.4.1.1# AA@BB
(数字在每行的最开始处)

希望得到帮助,谢谢您。

wp231957 发表于 2022-8-7 11:05:50

Amgalang 发表于 2022-8-7 10:50
上面的乱码了,在此更正。请大家看这个:

您好,


从后往前数,遇到第一个数字即插入一个井号??

ba21 发表于 2022-8-7 11:17:39

Amgalang 发表于 2022-8-7 10:50
上面的乱码了,在此更正。请大家看这个:

您好,


找到规律。按你提供的字符串,前面应该是数字和.的组合。
s = '''1.1.1.1.2.2.4.1AAA'''

def n(s):
    for i,v in enumerate(s):
      if 48<=ord(v)<=57 or v=='.':
            continue
      return i


i = n(s)
lst = (list(s))
lst.insert(i, '#')
s = ''.join(lst)

Amgalang 发表于 2022-8-7 11:33:01

wp231957 发表于 2022-8-7 11:05
从后往前数,遇到第一个数字即插入一个井号??

是呢,这个处理想法太赞了,学到了,希望有代码 哈哈

Amgalang 发表于 2022-8-7 11:33:50

ba21 发表于 2022-8-7 11:17
找到规律。按你提供的字符串,前面应该是数字和.的组合。

收到,谢谢咯,我过会儿试一试

wp231957 发表于 2022-8-7 11:34:04

Amgalang 发表于 2022-8-7 11:33
是呢,这个处理想法太赞了,学到了,希望有代码 哈哈

四楼代码和这个都差不多,异曲同工

Amgalang 发表于 2022-8-7 15:37:44

wp231957 发表于 2022-8-7 11:34
四楼代码和这个都差不多,异曲同工

好的,谢谢咯
页: [1]
查看完整版本: 一行数据的split求助