正则表达式30分钟入门
. 表示除了换行符以外的任意字符
\b 代表单词的开始或结尾
\s 匹配任意的空格或tab , 回车不算
\d 匹配任意数字
^ 匹配字符串的开始
$ 匹配字符串的结束
实例
01 新疆维吾尔自治区[注 1][注 2] 1,664,897 [参 3] 16.664556%
02 西藏自治区[注 1][注 3] 1,220,000 12.706724%
03 内蒙古自治区 1,183,000 12.321356%
04 青海省 721,000 7.499050%
05 四川省 488,000 5.082690%
06 黑龙江省 469,000 4.884798%
07 甘肃省 454,430 [参 4] 4.686906%
08 云南省 394,000 [参 5] 4.103647%
09 广西壮族自治区 236,700 [参 6] 2.461147%
10 湖南省 211,829 [参 7] 2.187223%
11 陕西省 205,800 [参 8] 2.135146%
12 河北省 190,000 1.978916%
13 吉林省 187,400 1.952083%
14 湖北省 185,900 1.936458%
15 广东省[注 1][注 4] 179,800 1.872917%
16 贵州省 176,000 1.833333%
17 河南省 167,000 1.739363%
18 江西省 166,900 [参 9] 1.735197%
19 山东省 157,126 [参 10] 1.636729%
20 山西省 156,700 1.632292%
21 辽宁省 148,000 [参 11] 1.517516%
22 安徽省 139,427 [参 12] 1.447733%
23 福建省[注 1][注 5] 124,000 1.291667%
24 浙江省 104,141 [参 13] 1.076718%
25 江苏省 102,658 [参 14] 1.068615%
26 重庆市 82,400 [参 15] 0.854058%
27 宁夏回族自治区 66,400 0.691579%
28 台湾省[注 1][注 6] 36,000 0.374953%
29 海南省[注 1][注 7] 35,354 0.368271%
30 北京市 16,411 0.174978%
31 天津市 11,920 [参 16] 0.124167%
32 上海市 6,340.5 [参 17] 0.066047%
33 香港特别行政区 1,105.7 0.011518%
34 澳门特别行政区 30.5 0.000318%
.
上面就保留各个省份
- ^\d+\s+
^ 字符串开头 \d+匹配多个数字 \s+匹配多个空格 - \[.+\]
\转义符 []中的.+匹配多个任意字符 - \s+(\d|.|%|,)+
\s+匹配多个空格 (\d|.|%|,)+匹配多个数字或.或%或,
把上面匹配的的全删了 , 得到如下
新疆维吾尔自治区
西藏自治区
内蒙古自治区
青海省
四川省
黑龙江省
甘肃省
云南省
广西壮族自治区
湖南省
陕西省
河北省
吉林省
湖北省
广东省
贵州省
河南省
江西省
山东省
山西省
辽宁省
安徽省
福建省
浙江省
江苏省
重庆市
宁夏回族自治区
台湾省
海南省
北京市
天津市
上海市
香港特别行政区
澳门特别行政区