文本处理--提取文本和对比

小文本处理方式
数据提取与对比
1, 利用正则表达式:这种方式适用于像Notepad++等编辑软件中。通常是选出不要的删除,留下要的。
2, 利用excel : ①区分规则位置–数据->分列(这里体现了CSV文件可以读入excel的原因(逗号区分)); ② 利用1正则表达式处理后(通常观察数据,代替为tab区分,这也是excel的默认处理方式)。
3,比较方式:① excel中用IF函数或excat函数做快速对比结果为TRUE或者FALSE(这里就不得不去了解了解);② 对比工具merge和compileFile等。

大文本处理方式
sed, awk, grep通常能够处理几十个G的文本,是以流的方式(这个比较难,现实中遇到了就去学)

举例:提取下面汉字部分
方法一:(正则)看文本寻找规则,很明显可以用 :.*, 这个正则选出后面的删除,替换引号即可。
方法二:(利用excel默认tab的处理)将 : 换成tab键,copy到excel中,选出你所需要的列即可。
方法三:(利用excel区分规则) 将以下内容copy到excel,利用分列,以:分列即可得到

“你好好啊” : “sdjfosdfosjfods”,
“你好好啊” : “sdjfosdfosjfods”,
“你好好啊” : “sdjfosdfosjfods”,
“你好好啊” : “sdjfosdfosjfods”,
“你好好啊” : “sdjfosdfosjfods”
“你好好啊” : “sdjfosdfosjfods”

最后给出图,以免找不到分列位置
文本处理--提取文本和对比_第1张图片

上面提到了excel函数(常见12个函数)
一、条件判断:IF函数
二、条件求和:SUMIF、SUMIFS函数。
三、条件计数:COUNTIF、COUNTIFS函数。
四、数据查询:VLOOKUP函数。
五、逆向查询:LOOKUP函数。
六、查询好搭档:INDEX+MATCH 函数。
七、提取出生年月:TEXT+MID函数。
八、计算年龄:DATEDIF函数。
九、中国式排名:SUMPRODUCT+COUNTIF函数。

这里面也有很多实用的方法。强烈建议点击此连接学习。
可以参考:http://www.excelhome.net/lesson/article/excel/1897.html

关于正则处理文本:
我们要处理这样的文本,
AAA.BBBBBB.CCC的文本查找出BBBBBB。

A. *?B     .表示任意字符,?表示匹配多个字符
A. *?(?=B)  包含A 不包含B 
(?<=A).*?(?=B) 都不包含
// 上面实际例子
\..*?\.    ---- 结果BBBBBB被找到

你可能感兴趣的:(办公软件)