文本内容为:
境界面(BOUNT)
兴趣面(POINT)
兴趣点(POIPT)
交通线(TRALK)
其中“境界面”、“兴趣面”等中文部分为图层名称,BOUNT、POINT等英文部分为图层别名。
希望通过替换后的文本内容为:
*BOUNT,境界面,面
*POINT,兴趣面,面
*POIPT,兴趣点,点
*TRALK,交通线,线
即,将原来的“中文名(英文名)”的格式修改为“*英文名,中文名,图层类型”的格式,且图层类型来源为中文图层名的最后一个字。
使用的正则表达式为:
^(.+?)([点线面]{1})(([A-Z]+))
表达式说明:
“^”匹配输入字符串的开始位置,即本例中的一整行文本;
第一个括号中的内容“.+?”匹配除换行符“\n”之外的任意一个字符,如本例中的“境”部分;
第二个括号中的内容匹配的是在“点、线、面”集合中的一个字符,如本例中的“面”;
第三个括号中的内容匹配的是大写的A-Z字符部分。
匹配结果示例如下:
使用下述表达式取到匹配结果并替换为指定的格式:
*$3,$1$2,$2
说明:$后跟序号N(如:$3),表示取到结果集中的第N条记录。其中第0条记录为完整的结果本身,第1条起为表达式括号中的内容。
在Notepad++中进行操作示例如下:
替换前:
替换后: