常用正则表达式
作者: 游鱼思
语法参考
. - 除换行符以外的所有字符。
^ - 字符串开头。
$ - 字符串结尾。
\d,\w,\s - 匹配数字、字符(无法匹配不常见的中文、半角括号)、空格。
\D,\W,\S - 匹配非数字、非字符(无法匹配不常见的中文、半角括号)、非空格。
[abc] - 匹配 a、b 或 c 中的一个字母。
[a-z] - 匹配 a 到 z 中的一个字母。
[^abc] - 匹配除了 a、b 或 c 中的其他字母。
aa|bb - 匹配 aa 或 bb。
? - 0 次或 1 次匹配。
-
- 匹配 0 次或多次。
-
- 匹配 1 次或多次。
{n} - 匹配 n次。
{n,} - 匹配 n次以上。
{m,n} - 最少 m 次,最多 n 次匹配。
(expr) - 捕获 expr 子模式,以 \1 使用它。
(?:expr) - 忽略捕获的子模式。
(?=expr) - 正向预查模式 expr。
(?!expr) - 负向预查模式 expr。
全局搜索 - g
忽略大小写 - i
多行模式 - m
合并多余的空行、tab
查找:[\n\t]
替换:\n
指标简称处理
匹配行末 ( ) ( ) 中的内容,通常为单位
查找:
([\S]{2,5}\n
([\S]{2,5}\n
匹配衍生度量
查找:(_.*?\n)|比上年同期增减\n|比年初增减\n
替换:\n
[可选]匹配只有1-2个字符的行
[1]{1,2}\n
经济指标分隔并交换位置
查找:
^(\S+)(应收票据及应收账款|主营业务费用及附加|主营业务税金及附加|固定资产原价合计|流动资产平均余额|本年应交增值税|比上年同期增减|所有者权益合计|港澳台资本金|工业产品产量|工业销售产值|固定资产合计|流动负债合计|流动资产合计|平均用工人数|应收账款净额|主营业务成本|主营业务收入)\n
^(\S+)(产成品存货|产品销售率|出口交货值|法人资本金|个人资本金|工业增加值|国家资本金|集体资本金|亏损企业数|利息净支出|外商资本金|应交所得税|应交增值税|财务费用|负债合计|管理费用|亏损总额|累计折旧|利润总额|利息费用|利息支出|实收资本|投资收益|销售费用|营业成本|营业费用|营业利润|营业收入|应付帐款|应收账款|资产总计|期末库存)\n
^(\S+)(产成品|产销率|单位数|销售量|增加值|产量|存货)\n
替换:\2\t\1\n
[可选]替换被错误切割的指标名称和维度
举例:资产合计 联营工业企业流动
需要替换为:流动资产合计 联营工业企业
查找:^(资产合计)+\t(\S+)(流动)+\n
替换:\3\1\t\2\n
其它类似的:
^(存货)+\t(\S+)(产成品)+\n
^(应收账款)+\t(\S+)(应收票据及)+\n
切分维度
1、工业亏损企业 替换为 工业企业亏损企业
2、把一些维度关键词切开
查找:(轻工业企业|重工业企业|大中型|规模以上|私营|国有控股|外商及港澳台商投资|亏损企业)
替换:+\1
查找:\t+
替换:\t
单位处理
提取单位
查找:
(([\S]{1,8}){1})\n
(([\S]{1,8}){1})\n
替换:\t\1\n
遗漏了: ××××年=100
生效日期-失效日期
查找:
.(([0-9]{4})-([0-9]{4}|至今)).
.(([0-9]{4})-([0-9]{4}|至今)).
.(([0-9]{0})-([0-9]{4}|至今)).
.(([0-9]{4})-([0-9]{0}|至今)).
替换:
\1\t\2
查找:^(?![0-9]{4}|\t).*
替换:空字符
价格方式 提取
查找:^.(现价|不变价).\n
替换:\1\n
查找:^(?!现价|不变价)+.*\n
替换:\n
衍生度量提取
查找:
[2]+(比上年同期增减|上年同期累计值|当月同比增速|环比增长速度|累计同比增速|比年初增减)\S*\n
[3]+(增长速度|环比增速|环比增长|累计增长|上年同期|同比增长|本月末|当季值|当期值|当月值|累计值|期末值)\S*\n
[4]+(增减|增速)\S*\n
替换:\t\1\n
提取第二列
地区维表,提取多列中最后有值的一列
查找:.\t(\S+)[\t]?\n
替换:\1\n