md中的特殊占位文件路径的替换

news/2025/1/22 8:37:21/

结构

:::readFile
/xx/xx.vue
:::

/xx/xx.vue进行替换出来

const extractContentAll = (str, prefix, suffix) => {const pattern = new RegExp(`${prefix}(.*?)${suffix}`, "sg");const match = str.match(pattern);return match ? match : null;};const extractContentSingle = (str, prefix, suffix) => {const pattern = new RegExp(`${prefix}(.*?)${suffix}`, "s");const match = str.match(pattern);return match ? (match[1] + "").replace(/^\s+|\s+$/g, "") : null;};let pp = extractContentAll(res, ":::readFile", ":::");for (let item of pp) {item = item + "";let tempFilePath = extractContentSingle(item, ":::readFile", ":::");let fileContent = await getFileContent(tempFilePath);res = res.replace(new RegExp(`${item}`),item.replace(new RegExp(`${tempFilePath}`), fileContent));}

读取文件的方案(按照实际情况兼容替换即可)

方式一

//index.html中的头部添加<!--md路径失败-->锚定,判断是否读取了
const getFileContent = async (filePath) => {const response = await fetch(new URL(filePath, import.meta.url));const content = await response.text();if (/<!--\s+md路径失败\s+-->/.test(content)) {return "请检验md的路径是否正确【" + filePath + "】";}return content;
};

方式二(uniapp)

uni.request({url: "/src/static/index/index.txt", // 本地文件的路径success: (res) => {console.log("读取本地文件成功", res.data);},fail: (err) => {console.log("读取本地文件失败", err);},});

http://www.ppmy.cn/news/1565178.html

相关文章

QD Laser携“Lantana”激光器参展SPIE光子学西部展2025,聚焦紧凑型设计

据悉&#xff0c;QD Laser公司将在2025年SPIE光子学西部展览会上展出其最新产品——世界最小一体化紧凑型可见光激光器“Lantana”。该展会将于1月28日至30日在旧金山的Moscone中心举行。 在展会期间&#xff0c;QD Laser公司将现场展示这款超小型、轻便设备—— “Lantana”。…

mysql精简单机版,免登录,可复制,不启动服务与本机mysql无冲突

突然有了个需要在本地使用的mysql需求&#xff0c;要求不用安装,随拷随用,不影响其他mysql服务,占用空间小.基于这种需求做了个精简版的mysql 首先下载mysql的zip安装包 > windows 64位 > https://repo.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.36-winx64…

记录一次 centos 启动失败

文章目录 现场1分析1现场2分析2搜索实际解决过程 现场1 一次断电,导致 之前能正常启动的centos 7.7 起不来了有部分log , 关键信息如下 [1.332724] XFS(sda3): Internal error xfs ... at line xxx of fs/xfs/xfs_trans.c [1.332724] XFS(sda3): Corruption of in-memory data…

无人机飞手考证难度增加,实操、地面站教学技术详解

随着无人机技术的快速发展和广泛应用&#xff0c;无人机飞手考证的难度确实在不断增加。这主要体现在对飞手的实操技能和地面站操作技术的要求上。以下是对无人机飞手考证中实操和地面站教学技术的详细解析&#xff1a; 一、实操教学技术详解 1. 无人机基础知识学习&#xff1…

C++17 新的求值顺序规则:小白友好版指南

嘿&#xff0c;C 小白们&#xff01;今天&#xff0c;我们要聊一个听起来有点枯燥&#xff0c;但实际上超重要的话题——C17 中的求值顺序规则。别急&#xff0c;我会用最通俗易懂的方式&#xff0c;带你一步步搞懂这个知识点&#xff0c;让你在编程路上少走弯路&#xff0c;写…

学习华为熵减模型:激发组织活力(系列之三)

目录 为什么学习华为&#xff1f; 学习华为什么&#xff1f; 一、势&#xff1a;顺势而为&#xff0c;在风口上猪都会飞起来。 二、道&#xff1a;就是认识和利用规律层面&#xff0c;文化和制度创新就是企业经营之道。 三、法&#xff1a;就是一套价值管理的变革方法论。…

【ROS2】☆ launch之Python

☆重点 ROS1和ROS2其中一个很大区别之一就是launch的编写方式。在ROS1中采用xml格式编写launch&#xff0c;而ROS2保留了XML 格式launch&#xff0c;还另外引入了Python和YAML 编写方式。选择哪种编写取决于每位开发人员的爱好&#xff0c;但是ROS2官方推荐使用Python方式编写…

【C++】模板(进阶)

本篇我们来介绍更多关于C模板的知识。模板初阶移步至&#xff1a;【C】模板&#xff08;初阶&#xff09; 1.非类型模板参数 1.1 非类型模板参数介绍 模板参数可以是类型形参&#xff0c;也可以是非类型形参。类型形参就是我们目前接触到的一些模板参数。 //类型模板参数 …