尝试使用正则表达式在 .txt 文件的每一行的特定位置替换 space ' '
Trying to replace a space ' ' at a specific position in every line of a .txt file using regex
我有一个以制表符分隔的文本文件,我可以将其导入 excel。那里有一个问题,我在导入时应该将 2 组数据分隔为 2 个不同的列之间没有选项卡。我只想用文件中每一行的制表符替换位置 40 的 space 字符。
示例数据:
02/01 02/04 24123069033893031235753 CHESTER LAKE BUENA VIFL .16
我愿意:
02/01 02/04 24123069033893031235753 CHESTER LAKE BUENA VIFL .16
我尝试了很多不同的尝试,使用正则表达式替换 Sublime 文本,但没有成功。我觉得这应该是一个简单的解决方案,但我已经在 Stack Overflow 上搜索了 2 个小时并尝试了不同的解决方案。
如果字符始终是一行中的第 40 个字符,这是一个示例:
使用正则表达式 ^(.{39})( )
替换 \t
,它将用制表符替换第 40 个字符(必须是 space)。
本质上,正则表达式只是将前 39 个字符抓取到第一个捕获组 ($1) 中,然后是 space。然后将其替换为第一个捕获组和一个选项卡以替换 space.
https://regex101.com/r/bhORsu/2
您还可以通过使用正向后视来摆脱第一个捕获组,这将使您只能精确匹配那个字符。正则表达式为 (?<=^(.{39}))
,替换为 \t
,但我不确定 sublime 是否支持正后视。
我有一个以制表符分隔的文本文件,我可以将其导入 excel。那里有一个问题,我在导入时应该将 2 组数据分隔为 2 个不同的列之间没有选项卡。我只想用文件中每一行的制表符替换位置 40 的 space 字符。
示例数据:
02/01 02/04 24123069033893031235753 CHESTER LAKE BUENA VIFL .16
我愿意:
02/01 02/04 24123069033893031235753 CHESTER LAKE BUENA VIFL .16
我尝试了很多不同的尝试,使用正则表达式替换 Sublime 文本,但没有成功。我觉得这应该是一个简单的解决方案,但我已经在 Stack Overflow 上搜索了 2 个小时并尝试了不同的解决方案。
如果字符始终是一行中的第 40 个字符,这是一个示例:
使用正则表达式 ^(.{39})( )
替换 \t
,它将用制表符替换第 40 个字符(必须是 space)。
本质上,正则表达式只是将前 39 个字符抓取到第一个捕获组 ($1) 中,然后是 space。然后将其替换为第一个捕获组和一个选项卡以替换 space.
https://regex101.com/r/bhORsu/2
您还可以通过使用正向后视来摆脱第一个捕获组,这将使您只能精确匹配那个字符。正则表达式为 (?<=^(.{39}))
,替换为 \t
,但我不确定 sublime 是否支持正后视。