我不确定这是否可行,但我需要使用 Notepad++ 将该单词的所有实例移动到 txt 文档中的 USA
列中。130
我并不“认为”这需要任何正则表达式,所以我在这里发布了它,但我开始改变想法。
我主要需要知道如何移动,USA
但如果知道如何移动,包括移动之后的一切,那就太好了,这样我就不必再回来问了。我倾向于把这些东西记在心里或放在一个文件中以供参考。
例子:
<titleid> <titlekey> <title> <random-number-of-spaces> USA System Application
<titleid> <titlekey> <title> <random-number-of-spaces> USA System Application
假设最终结果是美国的 U 位于第 130 列。我想知道如何将它移动到该点,以及如果可能的话,将它和它之后的所有内容移动到该点。
我已经设法找出一些表达式,用于向前移动 x 个制表符或前面的空格,但无法向后移动。这很复杂,因为前一个单词的结尾、<title>
长度不同,并且有些USA
需要向前移动,有些需要向后移动,所有这些都需要在同一列结束。因此,没有一个符合我想要实现的目标。
作为参考,查找\h+(?=USA\b)
替换\t
将根据语言首选项中设置的选项卡数量进行处理。
查找(?:(USA.+))
替换$1
将按前面的空格数向前移动$1
,但由于文档当前状态的锯齿形模式,它无助于对齐。
答案1
如果您确定位置 130 及之前只有空格,则可以分两步进行。
- 在之前添加130个空格
USA
:- 找什么:
\bUSA\b
- 替换为:
_________________$0
#(为了视觉效果更好,我使用 _ 代替空格)添加尽可能多的空格,使每行的 USA 从行首向前移动超过 130 个字符。 - 查看 正则表达式
- Replace all
- 找什么:
- 删除之前多余的空格
USA
- 找什么:
^.{129}\K\h+(?=\bUSA\b)
- 用。。。来代替:
LEAVE EMPTY
- 查看 正则表达式
- Replace all
- 找什么: