RegExp字符串TO特定字母的一部分(不包括)

时间:2016-08-16 14:31:24

标签: regex string csv split notepad++

有没有办法选择一个字母的一部分,直到一个字母,但没有得到结果中的字母?

例如Samplestring

1111111111;aaaaaaaaa;12ab12ab12

在最后,我想要像分裂串

那样获得一些
1111111111
aaaaaaaaaa
12ab12ab12

我有很多尝试... atm im和^(.*?)一起获得第一部分......

但我还是想摆脱分号。

我在记事本++中尝试这个

修改

我想用9k行编辑一个文件并替换一些东西

1111111111;aaaaaaaaa;12ab12ab12

应该以例如

结束
update table set x=1111111111, y='aaaaaaaaa' where z='12ab12ab12';

on notepad ++替换应该有一些像

update table set x='\3', y='\2' where z=\1;

2 个答案:

答案 0 :(得分:1)

使用捕获组捕获要重新排列的部分,以及不情愿的量词:

Find: ^(.*?);(.*?);(.*)
Repl: update table set x='$1', y='$2' where z=$3;

仅供参考.*?匹配 little ,效率高于.*

注意:根据您的评论,您似乎必须检查过"。匹配换行符"选项("正则表达式"选项旁边的查找/替换对话框的底部)。除非你理解并想要这种行为,否则通常最好不要检查这一点。

答案 1 :(得分:0)

刚刚通过在“替换”选项卡中选择“正则表达式”来尝试此操作

Find what ;

Replace with \n