比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
比如说,我有一个记事本 A 文档,记录了多个任务/段落
另外一个记事本 B 文档,也记录了多个任务/段落
现在要快速从 A 当中筛选某些段落,迁移到 B
目前,手动选定是可以实现的……但要从多段当中一段段的目测查找,复选,比较麻烦。
而从搜索结果,则只能一次次的选择和移动……
查询除了官方自带的搜索功能,还有 SQL 查询,当手动查询不方便时,我们可以考虑 SQL 查询。
根据你的描述,我觉得有两种方法:
如果你的 A 文档和 B 文档相似,只是某些段落不同,可以用对比工具,然后同步差异即可。
对比方法又有两种:
插件对比,比如,比较与合并文档插件。
外部工具对比,可以把两个文档先导出为 Markdown,然后用对比工具(比如 vscode,beyond compare)进行文件对比,对比后同步差异后复制到或再导入到思源即可。
如果 B 文档和 A 文档没什么关联,仅仅想把 A 查询结果复制到 B,可以使用下面的脚本提取并复制到剪切板,然后粘贴到 B 文档即可。
代码:
//!js
return (async () => {
/////// 主逻辑区 ///////
// sql查询
const sql = `select markdown from blocks where type='p' and markdown like '%工具%'`;
const result = await query(sql);
// 无数据提示
if(result.length === 0) return error('未找到任何数据');
// 过滤数据
const markdowns = result.map(row => row.markdown);
// 写到剪切板
const clipboardText = markdowns.join("\n\n");
await navigator.clipboard.writeText(clipboardText);
// 渲染结果
return render('查询结果已复制到剪切板');
/////// 功能函数区 ///////
// 查询SQL函数
async function query(sql) {
const result = await fetchSyncPost('/api/query/sql', { "stmt": sql });
if (result.code !== 0) {
console.error("查询数据库出错", result.msg);
return [];
}
return result.data;
}
// 渲染结果函数
function render(html, style) {
onRender('.b3-form__space--small').then((container) => {
container.style = style || 'color:var(--b3-card-info-color);';
container.innerHTML = html;
});
return [];
}
// 渲染错误输出
function error(html, style) {
return render(html, style || 'color:red;');
}
// 监听dom渲染
function onRender(selector) {
return new Promise(resolve => {
const check = () => {
let el = item.querySelector(selector);
if (el) resolve(el); else requestAnimationFrame(check);
};
check();
});
}
})();
使用方法:
在任意文档中输入 {{}}
在弹出的对话框中输入下面的代码,然后关闭窗口即可。
执行结果:
我来 wolai:不仅仅是未来的云端笔记!
Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。
欢迎访问我们运维的实例: https://wide.b3log.org
SQL Server 是由 [微软] 开发和推广的关系数据库管理系统(DBMS),它最初是由 微软、Sybase 和 Ashton-Tate 三家公司共同开发的,并于 1988 年推出了第一个 OS/2 版本。
flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。
深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。
PWA(Progressive Web App)是 Google 在 2015 年提出、2016 年 6 月开始推广的项目。它结合了一系列现代 Web 技术,在网页应用中实现和原生应用相近的用户体验。
程序员是从事程序开发、程序维护的专业人员。
InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。
Web Components 是 W3C 定义的标准,它给了前端开发者扩展浏览器标签的能力,可以方便地定制可复用组件,更好的进行模块化开发,解放了前端开发者的生产力。
链滴是一个记录生活的地方。
记录生活,连接点滴
Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。
Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。
Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。
Mobi.css is a lightweight, flexible CSS framework that focus on mobile.
希望你我能在旅途中找到人生的下一站。
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
哪里都缺人,哪里都不缺人。
百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。
Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。
机器学习(Machine Learning)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于