Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Replace 在记事本++或UltraEdit中,将每行的开头移动到其末尾_Replace_Notepad++_Ultraedit - Fatal编程技术网

Replace 在记事本++或UltraEdit中,将每行的开头移动到其末尾

Replace 在记事本++或UltraEdit中,将每行的开头移动到其末尾,replace,notepad++,ultraedit,Replace,Notepad++,Ultraedit,我有一个问题,使用记事本++或UltraEdit复制文件的前一列或前两列并将其添加到末尾。如果我的文件有规则的列,问题就会很容易解决,但是它没有。下面是它的外观: 18,-8 22 30.82,70 2 34.25, 19,-8 23 10,70 1 42.97, 20,-8 23 40.42,700 51.85, 21,-8 24 10.1,70 0 0.89, 22,-8 24 40.05,69 59 10.09, ... 1318,-7 27 26.82,78 3 16.1, 我想把我的

我有一个问题,使用记事本++或UltraEdit复制文件的前一列或前两列并将其添加到末尾。如果我的文件有规则的列,问题就会很容易解决,但是它没有。下面是它的外观:

18,-8 22 30.82,70 2 34.25,
19,-8 23 10,70 1 42.97,
20,-8 23 40.42,700 51.85,
21,-8 24 10.1,70 0 0.89,
22,-8 24 40.05,69 59 10.09,
...
1318,-7 27 26.82,78 3 16.1,
我想把我的身份证号码复制到每行的末尾。我尝试了替换工具,但没有找到正确的表达式以抓住行的开头。

使用记事本的一个可能解决方案++ 假设列之间用逗号分隔,则:

您可以录制将执行以下步骤的宏:

按Home/Pos1键将插入符号设置为当前行中的第一个位置 搜索两次,或搜索应复制到行尾的列数 按Shift+Home可选择从行首到插入符号所在位置的文本 按Ctrl+C组合键复制选定文本 按End将插入符号设置为当前行的末尾 按Ctrl+V将复制的文本粘贴到行尾 按将插入符号移动到下一行↓ 向下箭头 运行宏,直到到达文件末尾

PS:在运行宏之前,请始终备份数据

查找内容:^[0-9]**

替换为:\2\1

希望这对您有用。

在记事本++:

打开替换对话框:搜索->替换

要将第一个字段复制到末尾,请执行以下操作:

Find what: ^([0-9]+,)(.*)$
Replace with: \1\2\1
Find what: ^([0-9]+,)(.*)$
Replace with: \2\1
要将第一个字段移动到末尾,请执行以下操作:

Find what: ^([0-9]+,)(.*)$
Replace with: \1\2\1
Find what: ^([0-9]+,)(.*)$
Replace with: \2\1

在正则表达式搜索和替换模式下尝试以下操作:

查找: ^[0-9]**$

替换: \1\2\1

解释 ^和$分别是线的开头和结尾的锚点

^[0-9]*从行首开始匹配,直到遇到一个非数字,即逗号。这个 并通过\1使匹配的表达式在替换框中可用

.*$匹配所有其他项,直到行尾。同样,括号使匹配的表达式可以访问,这次是通过\2

因此,由于您希望在行的末尾获得第一列的副本,您只需执行以下操作:

替换:\1\2\1

相反,如果希望将第一列移动到末尾,则可能需要这样做

查找:^[0-9]**$

替换: \2\1

注意find表达式中添加的逗号。如果没有它,第一列数据后面的逗号将作为.*表达式的一部分进行匹配,因此当行被替换为\2\1时,逗号将保留在行的开头

编辑Oops,其他人已经击败了我,得到了基本相同的答案,但我希望解释是有帮助的