知识卡片

替换是结构化改写

普通读书笔记卡 · 1910.c

内容

正则替换不是简单删改字符串,而是先识别结构,再用捕获结果重组文本。重复单词高亮、文件名前缀、HTML 转换都属于同一模式。发散:当转换规则依赖上下文时,捕获比手工切片更稳。

参考来源

- 位置:第2章《入门示例拓展》「替换」小节(源文件:_epub-src/text/part0007_split_001.html) - 结论依据:原文明确说明替换结构$var=~s/regex/replacement/是先用正则表达式匹配再用捕获结果重组文本,并举了公函模板变量替换的例子,直接支持卡片对'替换是结构化改写'的论述。 - 原始内容:"我们已经看到,Perl和其他许多语言提供了一个正则表达式特性:替换……与之类似的结构$var=~s/regex/replacement/则更进一步:如果正则表达式能够匹配$var中的某段文本,则将这段匹配的文本替换为replacement。"