用捕获组和替换式重新格式化文本的实用示例合集。
替换的核心在于把匹配的部分用捕获组拆开再重新排列。编号组用 $1·$2 引用,命名组用 $<name> 引用。例如把日期用 (\d{4})-(\d{2})-(\d{2}) 抓取,再替换为 $3/$2/$1,那么 2026-07-02 就会变成 02/07/2026。
整理空白是常用的食谱。把连续空白 \s+ 换成一个空格,把行首行尾的空白用 ^\s+|\s+$ 替换为空字符串来删除。如果是多行文本,需要同时打开 m 标志,才能应用到每一行的开头和结尾。
只留下数字来改变格式也很常见。把电话号码中的数字用 (\d{3})(\d{4})(\d{4}) 抓取,再替换为 $1-$2-$3,就会得到一致的格式。可以在本工具的替换标签页实时确认结果并调整。
了解替换式的特殊符号也很有帮助。$& 表示整个匹配,$` 和 $' 表示匹配前后的上下文,字面的美元符号写作 $$。本工具支持字符串替换,复杂的条件替换最好使用编程语言的函数替换。