You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何交换文本文件中左侧数字与右侧字符串的位置?

调换文本行中数字与字符串的位置方法

假设你的输入文件名为input.txt,每行格式为「数字 字符串」(字符串可包含空格),以下是几种高效的处理方式:

1. 使用 sed 命令(Linux/Unix 环境)

利用正则表达式匹配并调换字段位置,命令如下:

sed -E 's/^([0-9]+) (.*)/\2 \1/' input.txt > output.txt
  • 说明:^([0-9]+) 匹配行首的数字序列,(.*) 匹配数字后的所有内容;\2 \1 将两个匹配组调换位置,输出结果保存到output.txt。

2. 使用 awk 命令(Linux/Unix 环境)

通过字段分割实现位置调换,兼容字符串含空格的场景:

awk '{print substr($0, index($0,$2)) " " $1}' input.txt > output.txt
  • 说明:substr($0, index($0,$2)) 提取从第二个字段开始的所有内容(即原字符串部分),再拼接原数字字段$1,完成调换。

3. Python 脚本(跨平台)

适合需要自定义逻辑或跨操作系统的场景,脚本示例:

with open('input.txt', 'r', encoding='utf-8') as infile, open('output.txt', 'w', encoding='utf-8') as outfile:
    for line in infile:
        line = line.strip()
        if not line:
            continue
        # 按第一个空格分割,避免拆分字符串内的空格
        num_part, str_part = line.split(' ', 1)
        outfile.write(f"{str_part} {num_part}\n")
  • 说明:逐行读取文件,按第一个空格分割数字和字符串部分,调换后写入新文件,支持含空格的字符串。

内容的提问来源于stack exchange,提问作者SUDEM S DAIMARI

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 02:00:34