                              “匹配助手”8.0版使用指南

“匹配助手”，又名“Matching_Helper”。是无需安装绿色的免费软件，简单高效处理文档。

功能：
将A与B两文件相同的内容提取出来生成C
将A与B两文件不相同的内容提取出来生成C
将A有，B没有的内容提取出来生成C
将A与B合并成C
将A清空重复内容生成C
将A重复内容生成C
将A每行内容前加上前缀生成C
将A每行内容后加上后缀生成C
按A顺序排列B生成C
将A从最后一行反向生成C
将A从小到大排列生成C
将A从大到小排列生成C
将A中包含B的内容生成C
将A中不包含B的内容生成C
自定义对比，如 A1:B2=A1B1A2B3
正则匹配，如 A=~s/(\d)/$1*2/ge

使用方法：
1、打开需要匹配的文件。
2、设置匹配选项。
3、点击转换即可。

支持读取“.txt”、“.xls”、“.xlsx”文件，也支持生成“.txt”、“.xls”、“.xlsx”文件。

默认为英语界面，中国地区默认为中文界面，您可以自己修改界面内容为自己的国家语言，界面排版也可以自定义。

16种功能：
1-14讲解例子都使用下面的两个文件内容：
A文件：
111
111
111
222
222
333
B文件：
123
AAA
333
AAA
222
________________________________________________________________________________
1、将A与B两文件相同的内容提取出来生成C文件
也就是把同时存在于A与B两个不同的文件里的相同内容提取出来，单独提取出来重新生成一个新文件C。
如果选择了“重复保留”则C文件内容为：
333
333
222
222
222
因为选择了“重复保留”，表示如果结果里相同内容存在多个，则多个内容同时保留在C文件里。
注意看，A和B有两个相同的内容是“222”和“333”，A文件有两个“222”和一个“333”，B文件有一个“222”和一个“333”，所以就成了两个“333”和和三个“222”。
那么如果不选择“重复保留”呢？C文件的内容为：
333
222
因为不保留结果里的重复内容了，所以“333”和“222”都只有一个了。
________________________________________________________________________________
2、将A与B两文件不相同的内容提取出来生成C
是指将没有同时存在A文件与B文件里的内容提取出来生成C文件
如果选择了“重复保留”则C文件内容为：
111
111
111
123
AAA
AAA
A文件里有内容“111”（三个111）不存在于B文件，而B文件有内容“123”（一个123）、“AAA”（两个AAA）不存在于A文件，所以生成的C文件内容就有了一个“123”，两个“AAA”，三个“111”。
不选择“重复保留”呢？C文件的内容为：
111
123
AAA
也就是只保留一个结果。
________________________________________________________________________________
3、将A有，B没有的内容提取出来生成C
很好理解，A文件有的内容，而B文件没有，就把它提取出来生成文件C
如果选择了“重复保留”则C文件内容为：
111
111
111
因为只有“111”是B文件没有的，“222”与“333”在B文件都可以找得到，同时选择了“重复保留”所以生成的C文件会有三个“111”
不选择“重复保留”，那么C文件只会有一个“111”，您想必也猜得到。
有个家伙问我怎么将B文件有，而A文件没有的内容提取出来生成C，我不会告诉他用“A文件浏览”选择B文件，用“B文件浏览”选择A文件：）
________________________________________________________________________________
4、将A与B合并成C
A文件内容在前，B文件内容在后，合并成新的C文件
如果选择了“重复保留”则C文件内容为：
111
111
111
222
222
333
123
AAA
333
AAA
222
A文件与B文件内容全部保留，数一下不^_^
不选择了“重复保留”则C文件内容为：
111
222
333
123
AAA
每一个内容就保留了一次，再数一次。。。
________________________________________________________________________________
5、将A清空重复内容生成C
特别注意！！！这里的清空重复内容是指将有重复内容出现的一个不留，比如出现两个“111”，那么就删除两个“111”，而不是只删除一个“111”，生成的文件不会产生“111”了！！重复内容想保留一个的功能后面会讲解到，但不是在这个5号功能里。
既然重复内容都全部删了，那个“重复保留”选项在这里就无所谓了。
C文件内容为：
333
因为A文件有三个“111”和两个“222”都被删除了。
________________________________________________________________________________
6、将A重复内容生成C
这个跟上面的功能相反，只有重复的才保留内容。
如果选择了“重复保留”则C文件内容为：
111
111
111
222
222
因为“333”只有一个，所以被删除了。
不选择了“重复保留”则C文件内容为：
111
222
虽然“111”有三个，“222”有两个，但都只保留了一个。
________________________________________________________________________________
7、将A每行内容前加上前缀生成C
您想试着在每一行前面连接上指定的内容，用它就对了。比如内容为“RuiWang Li”（作者的姓名），您想在前面添加上招呼“hi ”，使其成为“hi RuiWang Li”，怎么做？选择完A文件后，在右下角有看到一行文本框，把“hi ”填上去运行即可。
如果选择了“重复保留”则C文件内容为：
hi 111
hi 111
hi 111
hi 222
hi 222
hi 333
不选择“重复保留”则C文件内容为：
hi 111
hi 222
hi 333
________________________________________________________________________________
8、将A每行内容后加上后缀生成C
跟上面7功能是相反的，比如内容为“RuiWang Li”（这是谁？），您想在后面添加上招呼“,hi”，使其成为“RuiWang Li,hi”，怎么做？选择完A文件后，在右下角有看到一行文本框，把“,hi”填上去运行即可。
如果选择了“重复保留”则C文件内容为：
111,hi
111,hi
111,hi
222,hi
222,hi
333,hi
不选择了“重复保留”则C文件内容为：
111,hi
222,hi
333,hi
________________________________________________________________________________
9、按A顺序排列B生成C
有一个排序混乱的B文件，您希望按照A文件的顺序来重新排列B文件，选这个功能就对啦。
222
333
123
AAA
如果选择了“重复保留”则C文件内容为：
222
333
123
AAA
AAA
首先是B文件的内容“222”被发现出现在A文件中，接下来发现了“333”，另外还有“123”与“AAA”
________________________________________________________________________________
10、将A从最后一行反向生成C
用于从文件的最后一行反向读取并生成C文件，最后一行成了第一行，第一行成了最后一行。
333
222
111
如果选择了“重复保留”则C文件内容为：
333
222
222
111
111
111
________________________________________________________________________________
11、将A从小到大排列生成C
对比不同行内容并从小到大排列成新文件C
111
222
333
第一行111，第二行222，第三行333，是不是从小到大了哟
如果选择了“重复保留”则C文件内容为：
111
111
111
222
222
333
和上面是一样的，只是保留了重复内容，文件是完整的。
________________________________________________________________________________
12、将A从大到小排列生成C
对比不同行内容并从大到小排列成新文件C
333
222
111
第一行333，第二行222，第三行111，是不是从小到大了哟
如果选择了“重复保留”则C文件内容为：
333
222
222
111
111
111
和上面是一样的，只是保留了重复内容，文件是完整的。
________________________________________________________________________________
13、将A中包含B的内容生成C
注意，这里是指包含，不是指等于，打个比方说，如“A123B”包含“123”，只要是包含就行。
222
333
如果选择了“重复保留”则C文件内容为：
222
222
333
另外，包含时不区分大小写，也就是说“A123B”包含“a12”或包含“23b”等。
________________________________________________________________________________
14、将A中不包含B的内容生成C
注意，这里是指不包含，不是指不等于。
111
如果选择了“重复保留”则C文件内容为：
111
111
111
另外，不包含时是不区分大小写的。同13。
________________________________________________________________________________
15、自定义对比，如 A1:B2=A1B1A2B3
这是个灵活的表达式，使“匹配助手”增色不少。
A文件：
000	222	de2	333	444	555	666	777
001	223	qs3	334	445	556	667	778
002	224	Aa4	335	446	557	668	779
B文件：
AAA	BBB	223	DDD	EE1	FFF	GGG	HH1	1	10444444	1	1	1	1
AAA	BBB	224	DDD	EE2	FFF	GGG	HH2	a	a1333330	a	a	a	a
AAA	BBB	221	DDD	EE3	FFF	GGG	HH3	b	b1222203	b	b	b	b
AAA	BBB	222	DDD	EE4	FFF	GGG	HH4	c	101111cc	c	c	c	c
AAA	BBB	223	DDD	EE5	FFF	GGG	HH5	d	dd11234560	d	d	d	d
以表达式为例：
A2:B3=A1B5A4B11
“A2”指A文件的第2列，也可以写成“a2”
“:”指对比的意思，是等于的意思，不是包含，匹分大小写。
“B3”指B文件的第3列，也可以写成“b3”
“=”指生成结果
“A1B5A4B11”，也可以写成“a1b5a4b11”，指如果A文件的第2列等于B文件的第3列，那么结果就是:A文件的第1列、B文件的第5列、A文件的第4列、B文件的第11列，各要素中间是用“	”（一个Tab键）分隔开。结果如下：
000	EE4	333	c
001	EE1	334	1
002	EE2	335	a
如果选择了“重复保留”则C文件内容为：
000	EE4	333	c
001	EE1	334	1
001	EE5	334	d
002	EE2	335	a
您可以尝试下，挺好用的。
________________________________________________________________________________
16、正则匹配，如 A=~s/(\d)/$1*2/ge
另外，在15功能的输入栏里，还有个功能，可以写A=A（A不区分大小写）
这个需要配合正则匹配使用（下面举几个例子，加深下印象）
注意：正则匹配同样适用于1-14的功能！
正则匹配可谓人间神器，有兴趣可以多研究下Perl的正则。
比如A=A
那您得在正则匹配写上表达式。
如表达式a=~m/a{5}/i
a=代表A文件，也可以A=。如果是b=或B=则为B文件。
~m意指匹配，符合条件的意思。
/a{5}/i指5个a或5个A，a{5}指5个a，最后的i指不区分大小写，那就是5个a或5个A。
那么，这个A=A，正则表达式a=~m/a{5}/i，就是A文件里，每一行内容，存在5个a或5个A，则输出到C文件里。

例子2：
a=~m/^XYZ\d{7,11}/
^XYZ指每行以XYZ开头，\d{7,11}指7至11位的数字（\d指数字）

例子3：
ab=~m/a.+c/
ab=代表A和B两文件都需要匹配，.+指1次或多次的任何字符，所以这个能匹配abc，axxc，aT9sW"Sc等等，A和B每一行内容符合这些条件的都输出到C文件。

例子4：
a=~s/a/Z/ig
~s指替换模式，最后的i前面讲过，指不区分大小写，g指所有的匹配。
比如一行内容为1axazAa0，那么，替换后变成什么样？1ZxZzZZ0，有多少a或A就全替换成Z（共4个a或A）。
里面的小写z并不替换成大写Z，因为我们表达式并没有小写z替换大写Z，替换的是a或A。
最终把替换后的内容输出到C文件。

例子5：
a=~s/(\d+)/$1*2/ge
比如一行内容为a1b2c3，(\d+)能匹配1和2和3，$1*2表示匹配到的第一个括号条件乘2，最后的e表示执行条件。
那么，最终结果为a2b4c6

例子6：
a=~y/a/A/
~y为转换模式，比如一行内容为abcxyzaaa，结果为AbcxyzAAA。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
多使用，多交流，发现越多的美，您会越发的喜欢“匹配助手”！y6cmE祝您使用愉快！