在新文本文件中打印替换行

2024-04-06

我正在尝试编辑 matlabfile 并替换某些特定行中的一些编码部分 init 。但是,使用下面的格式进行更改根本不会更改行上下文。 (它将打印相同的旧行)。知道我做错了什么吗? 'replaceAll' 不适合将行中的某些单词替换为其他单词?

提前致谢。

try {
    PrintWriter out = new PrintWriter(new FileWriter(filenew, true));
    Scanner scanner = new Scanner(file);

    while (scanner.hasNextLine()) {
        String line = scanner.nextLine();

        if (line.contains("stream.Values(strmatch('Test',stream.Components,'exact'))") {  
            String newline = line.replaceAll("stream.Values(strmatch('Test',stream.Components,'exact'))", "New Data");

            out.println(newline);
            System.out.println(newline);
        } else {
            out.write(line);
            out.write("\n");
        }
    }     // while loop

    out.flush();
    out.close();
    scanner.close();



} catch (IOException e)  {
    e.printStackTrace();
}

The replaceAll方法上String采用正则表达式作为参数,并且在正则表达式中某些字符具有特殊含义,例如表达式中的括号。

只需使用replace方法,它接受文字字符串:

String newline = line.replace("stream.Values(strmatch('Test',stream.Components,'exact'))", "New Data");

不要被方法的名称混淆 - 之间的区别replace and replaceAll不在于它们替换了多少次,而区别在于第一个采用文字字符串,第二个采用正则表达式。它在 Javadoc 中:

取代每个子串与文字目标匹配的字符串的 具有指定文字替换序列的序列。

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

在新文本文件中打印替换行 的相关文章

随机推荐

  • ASP.NET Web 表单:母版页和 CSS 文件 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一个项目 Web 应用程序 需要使用 Web 表单来实现 我已经准备好网站的设计 我将使用我已经开发的 CSS 模板之一 在这种情况下 我应
  • 在 TinyPG 中使用 BNF 中的现有语言?

    我该如何使用这些 BNF 语法 http www devincook com GOLDParser grammars index htm哪些在GOLD 元语法 http www devincook com GOLDParser doc me
  • pip 升级后的 PyOpenSSl 版本 0.13.1

    我在 Mac El Capitan 上 我的系统显示我卡在 PyOpenSSl 版本 0 13 1 上 当我升级到16 2 0时 升级成功 然而 当我检查版本时 它仍然是0 13 1 为什么是这样 MacBook Air include s
  • 具有多个文件的 WCF 多部分/表单数据

    我在任何地方都找不到任何有关如何处理请求中包含多个文件的多部分 表单数据的示例 我正在尝试构建一个 WCF 服务端点 其中在一个文本文件中包含一组参数 然后是两个图像文件 总共在一篇文章中包含三个文件 使用 Fiddler 我可以构建请求
  • Spring 和 Spring MVC 框架有什么区别

    我是春天的新手 谁能告诉我 Spring 和 Spring MVC 框架有什么区别 Spring是一个很大的框架 包含很多组件 这些组件之一是 Spring MVC 它是一个允许您根据模型 视图 控制器设计模式实现 Web 应用程序的组件
  • 如何将两个STL向量的元素相加?

    这个问题很愚蠢 但我需要以一种非常有效的方式来做 它将在我的代码中一遍又一遍地执行 我有一个返回向量的函数 我必须将返回的值逐个元素添加到另一个向量中 非常简单 vector
  • 两个不同流上的operator<<(ostream&, obj) 线程安全吗?

    include
  • 为什么我不能使用 KVC 从 Objective-C 对象到 Swift 属性?

    我的团队决定新文件应该用 swift 编写 并且我在 Objective C 对象中使用 KVC 在 Swift 对象上设置属性时发现了一个奇怪的问题 我的 Objective C 设置如下属性 textObject setValue 0
  • LUIS 给出 403 错误“通话量配额”。使用创作资源 F0 在门户中进行测试时

    当我尝试测试 LUIS 应用程序时 它抛出 403 错误并显示以下消息 LUIS 的未通话量配额 正在编写 F0 定价等级 请在 9 天后重试 要增加通话量 请切换到付费等级 我正在使用 Azure 创作资源密钥层 F0 它有一个limit
  • 在单独的 TypeScript 项目之间共享接口

    tl 博士在底部 我有一个用 TypeScript 编写的网络服务器和一个用 TypeScript 编写的客户端 SPA 我的想法是共享请求和响应数据的接口 以充分利用 类型安全 我的大问题是客户端和服务器是同级文件夹 每个文件夹都有自己的
  • 子查询返回超过 1 个值。当子查询时这是不允许的

    我正在尝试使用 SQL 从 SCCM 返回 Windows 更新合规性数据 我已从内置 SSRS 报告中提取了查询 我没有为每个 colname 计算机组 运行单独的查询 而是尝试通过将 colname 声明为表并插入多个值来合并为一个查询
  • FSGetVolumeInfo 是 NSWorkspace 已弃用的 MountedLocalVolumePaths 方法的推荐替代方法吗?

    我需要获取 Mac OS X 上已安装的本地卷的列表 以前 Cocoa 类NSWorkspace had a mountedLocalVolumePaths method https developer apple com library
  • 下载弹出窗口中的内容

    下面是点击 打开窗口 时弹出窗口的 html 代码 我添加了下载按钮 在其中 一旦用户单击它 就应该下载该表 我在这里缺少一些东西 谁能帮我 我已经快到最后阶段了 唯一悬而未决的是下载内容 table border 1 tr th th t
  • VS Code 无法打开终端

    由于某种原因 vscode 停止打开集成终端 现在每次尝试打开终端时都会出现错误 我已经尝试过重新安装 Git 但到目前为止还没有任何想法 这里我留下了配置和错误的图片 我什至尝试将 bash 终端更改为 powershell 但仍然没有任
  • 数据类型的数据模板 - 如何在特定列表框中覆盖此数据模板?

    我为我的宠物项目中的一些数据类型创建了几个数据模板 这些数据模板非常酷 因为它们像魔法一样工作 无论何时何地出现在 UI 中 都会神奇地改变数据类型实例的外观 现在我希望能够在一个特定的列表框中更改这些数据类型的数据模板 这是否意味着我必须
  • 这个格式字符串有什么问题?

    我有一个像这样的字符串
  • Cygwin 中的 vim 在打开文件时将第一个字符替换为“g”

    我在 Cygwin 终端中使用 vim 一切正常 最近 我在 Cygwin 中添加了一个包 导致 vim 和其他一些组件的更新 现在 当我在 vim 中打开任何文件时 文件中的第一个字符将被替换为字符 g 我尝试删除 vimrc 以及我的主
  • Chrome 扩展程序弹出窗口不再显示

    我正在创建一个新的 Chrome 扩展程序 一切都很好 然而 今天我正在编写一个新函数 然后我看到我的扩展图标变成了灰色 当我单击该图标时 不会显示弹出窗口 有趣的一点是该扩展正在运行 没有错误日志 我把自己写的代码都注释掉了 但是没有效果
  • NHibernate:更改父级 - “删除的对象将通过级联重新保存”

    正如标题所说 基本上我想做的是改变孩子的父母 但是当我尝试这样做时 出现异常 ObjectDeletedException 已删除的对象将由级联重新保存 从关联中删除已删除的对象 我已经在谷歌上搜索了几个小时 但我找到的解决方案都不适合我
  • 在新文本文件中打印替换行

    我正在尝试编辑 matlabfile 并替换某些特定行中的一些编码部分 init 但是 使用下面的格式进行更改根本不会更改行上下文 它将打印相同的旧行 知道我做错了什么吗 replaceAll 不适合将行中的某些单词替换为其他单词 提前致谢