合并两个文本文件的最简单的脚本方法 - Ruby、Python、JavaScript、Java?

2023-12-14

我有两个文本文件,一个包含 HTML,另一个包含 URL slugs:

文件 1(HTML):

<li><a href="/article/"><button class="showarticle"/><span class="author">Thomas Friedman</span> - <span class="title">The World Is Flat</span></a></li>
<li><a href="/article/"><button class="showarticle"/><span class="author">Michael Dagleish</span> - <span class="title">Scotland In Wartime</span></a></li>
<li><a href="/article/"><button class="showarticle"/><span class="author">Dr. Raymond Kinsella</span> - <span class="title">Progress In Cancer Treatments</span></a></li>
...

文件 2(URL 段):

thomas-friedman-the-world-is-flat
michael-dagleish-scotland-in-wartime
dr-raymond-kinsella-progress-in-cancer-treatments
...

我需要合并它们,以便 FILE 2 中的 slugs 插入到 FILE 1 中的 HTML 中,如下所示:

OUTPUT:

<li><a href="/article/thomas-friedman-the-world-is-flat"><button class="showarticle"/><span class="author">Thomas Friedman</span> - <span class="title">The World Is Flat</span></a></li>
<li><a href="/article/michael-dagleish-scotland-in-wartime"><button class="showarticle"/><span class="author">Michael Dagleish</span> - <span class="title">Scotland In Wartime</span></a></li>
<li><a href="/article/dr-raymond-kinsella-progress-in-cancer-treatments"><button class="showarticle"/><span class="author">Dr. Raymond Kinsella</span> - <span class="title">Progress In Cancer Treatments</span></a></li>

最好的方法是什么?哪种语言最适合以最小的复杂性完成此任务?


您需要 zip 函数,该函数在大多数语言中都可用。其目的是并行处理两个或多个数组。
在 Ruby 中,它会是这样的:

f1 = File.readlines('file1.txt')
f2 = File.readlines('file2.txt')

File.open('file3.txt','w') do |output_file|

    f1.zip(f2) do |a,b|
        output_file.puts a.sub('/article/','/article/'+b)
    end

end

要压缩两个以上的数组,您可以这样做f1.zip(f2,f3,...) do |a,b,c,...|

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

合并两个文本文件的最简单的脚本方法 - Ruby、Python、JavaScript、Java? 的相关文章

随机推荐

  • 防止 Flutter 中通过 video_player 使用的 ExoPlayer 发送垃圾邮件日志

    每当我在我的播放器中播放新文件时视频播放器我得到一长串日志 这使得查看我自己的日志变得更加困难 其中很多都包含记录值信息和嗨有没有办法让 video player 不那么喋喋不休 I ExoPlayerImpl 21717 Init d44
  • 避免重定向

    我正在尝试解析一个站点 用 ASP 编写 爬虫程序被重定向到主站点 但我想做的是解析给定的网址 而不是重定向的网址 有没有办法做到这一点 我尝试将 REDIRECT False 添加到settings py 文件中 但没有成功 以下是爬虫的
  • ASP.NET MVC3 RAZOR:从部分视图重定向

    我有两个部分视图 MyPopular 和 MyBlogs 有两个控制器 ArticleController cs 和 ThePopularController cs 这两个局部视图都包含按钮 最初 它在索引视图内呈现两个部分视图 在博客点击
  • 如何使用htaccess更改图片路径?

    我有一个包含图像的 html 文件 img src smilies happy gif 是否可以使用此路径重定向到另一个路径 htaccess 所以上面的例子就相当于 img src http static example com smil
  • 从 Excel 引用 Outlook 文件夹

    我创建了一个宏来读取 Outlook 电子邮件并将值和标题 发送的主题时间等 提取到 Excel 这之前可以工作 但现在提示错误 尝试的操作失败 找不到对象 该文件夹的位置是 收件箱 TIBCO 报告文件夹 错误提示在line Set ol
  • 带有填充 pkcs7 C++ 代码的 AES

    我需要一个使用 aes cbc256 和填充的字符串加密示例 在 C 中 gt 我正在 linux Ubuntu 上工作 PKCS7 请帮忙 对于以下代码 如何将 IV 设置为 0 并将键值设置为字符串值 我还想添加 pkcs7 填充 我正
  • Antlr4 从错误中恢复并继续解析直到 EOF

    我正在使用 Antlr 4 5 用 Ja va 编写 C 语法 当我处理具有预处理器指令的 C 源代码时 示例代码 using System using System Collections Generic using System Lin
  • Android:如何使用名称从资源中获取字符串?

    我希望在我的资源文件中为 UI 提供两种语言并为它们提供单独的字符串值res values strings xml
  • -[NSRunningApplication activateWithOptions:] 不工作

    我正在尝试创建一个程序来专注于某个应用程序 如果它已启动 这是我的代码 import
  • 如何验证(通过单元测试)错误堆栈是否打印在日志文件中?

    在继续对于这个答案我编写了一个单元测试来验证如果出现错误 堆栈将打印在日志文件中 测试方法 import org slf4j Logger import org slf4j LoggerFactory private final Logge
  • std::ostringstream 缓冲区的最大大小是多少?

    分配的大小是否基于动态分配的可用内存量 当我们达到这个限制时会发生什么 是否抛出异常或者覆盖内存的其他部分 或者它默默地停止写入缓冲区 的缓冲区std stringstream对象是一个包装器std string目的 因此 最大尺寸为std
  • 在全日历事件上重复时间

    我正在尝试在完整日历的某个时间制作一些重复事件 例如我希望事件发生于 2016年1月3日 直到 2016 年 1 月 7 日 这是我获取所有事件的代码
  • 多对多字段 django 添加双向关系

    我正在尝试实现一种允许用户关注另一个用户的功能 问题是当我将新用户添加到 关注者 时 关注另一个用户的用户也会添加到关注用户的以下列表中 例如 如果用户 a 关注用户 b 我将得到 view py def follow test reque
  • 如何重写现有对象的方法?

    该对象是用以下命令创建的reify我需要重写它的方法之一 我发现的唯一方法是使用经典的 OO 装饰器和另一种用途reify 还有其他办法吗 恐怕你必须创建一个装饰器 因为 Clojure 没有内置构造来默认将一个对象的行为委托给另一个对象
  • 使用 ActiveRecord 匹配 PostgreSQL 中的数组值

    在我的 Rails 4 应用程序中 我的目标是查看所有联系人 其中字段visible to在联系人表中等于 1 我的visible to is integer array true 但是 我得到以下异常 PG UndefinedFuncti
  • 您是否需要显式关闭 Java KeyStore 输入流?

    当使用 FileInputStream 读取 KeyStore 时 是否需要显式关闭输入流以阻止系统资源被浪费 FileInputStream fin new FileInputStream keystore jks KeyStore ke
  • python 3.2导入问题

    过去几天我一直在尝试安装分发进行故障排除 以便可以开始导入第 3 方模块 我已经有几年没有使用 python 了 所以我重新记住了那些非常困难的事情 我按照给定的目录的错误进行操作 但不知道下一步该怎么做 我正在运行 mac 版本 10 8
  • Rails 5 中的“left_joins”和“includes”有什么区别?

    在Rails 5中 他们添加了ActiveRecord查询方法left joins 有什么区别left joins and includes 我一直都看到includes作为左连接 includes默认情况下 在 2 个查询中加载关联数据
  • ConnectivityManager.CONNECTIVITY_ACTION,注册接收器时总是广播?

    我正在注册一个接收器来捕获 ConnectivityManager CONNECTIVITY ACTIONin code即我没有在应用程序清单中注册它 一切工作正常 但我注意到 尽管网络已经打开 但只要我注册接收器 我就会自动收到广播 我的
  • 合并两个文本文件的最简单的脚本方法 - Ruby、Python、JavaScript、Java?

    我有两个文本文件 一个包含 HTML 另一个包含 URL slugs 文件 1 HTML li a href article a li