You need to enable JavaScript to run this app. 如何用PowerShell正则递归替换adoc文档中link格式链接为xref格式
优惠活动
大模型
产品
解决方案
定价
更多

如何用PowerShell正则递归替换adoc文档中link格式链接为xref格式

你可以直接在原有脚本的正则规则表中新增匹配规则即可,完整可运行脚本如下:

Get-ChildItem -Path *.adoc -file -recurse | ForEach-Object {
    $lines = Get-Content -Path $PSItem.FullName -Encoding UTF8 -Raw
    $patterns = @{
        '(\[\.dfn \.term])#(.*?)#' = '$1_$2_' ;
        # 新增的link转xref规则
        'link:([^\[\]]+?)\.html\[' = 'xref:$1.adoc[' ;
    }
    $option = [System.Text.RegularExpressions.RegexOptions]::Singleline 
    foreach($k in $patterns.Keys){
        $pat = [regex]::new($k, $option)
        $lines = $pat.Replace($lines, $patterns.$k)
    }
    $lines | Set-Content -Path $PSItem.FullName -Encoding UTF8 -Force
}

规则说明

  • 只会匹配link:xxx.html[xxx格式的内部链接,完全不会修改http/https开头的外部链接的.html后缀
  • 捕获组([^\[\]]+?)支持匹配任意长度的相对路径、多级目录路径,不会截断路径内容
  • 替换时仅修改前缀link:为xref:、后缀.html为.adoc,方括号内的展示文本、路径内容完全保留不变

提示:建议运行脚本前先备份所有adoc文件,避免误操作导致内容丢失。

内容的提问来源于stack exchange,提问作者Vladimir Markiev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.17 06:45:10