当前位置: 首页 > 面试题库 >

有关String.replaceAll()和String.replaceFirst()方法的问题

澹台啸
2023-03-14
问题内容

我需要对一段字符串进行简单的字符串替换操作。我遇到了以下问题,希望能得到一些建议。

  1. 在我得到的原始字符串中,我可以将字符串替换为其他字符串<div class="more">
  2. 但是,在相同的原始字符串中,如果我想替换一个很长的字符串,例如以下字符串,它将无法正常工作。通话后,一切都不会被替换。

<div class="more"><a href="http://SERVER_name/profiles/atom/mv/theboard/entries/related.do?email=xyz.com&amp;ps=20&amp;since=1273518953218&amp;sinceEntryId=abc- def-123-456">More...</a></div>

我尝试了以下两种方法:

originalString.replaceFirst(moreTag, newContent);
originalString.replaceAll(moreTag, newContent);

提前致谢。


问题答案:

您需要掌握替换结果并进一步使用它:

String newString = originalString.replaceFirst(moreTag, newContent);
System.out.println(newString);

说明:Java中的字符串是 不可变的 。的行为方法java.lang.String不会改变内部价值。他们将 返回 修改后的结果。

如果那仍然不能返回期望的结果,则moreTag根本不匹配任何内容。您提到的方法需要一个正则表达式。您可以在Patternjavadoc中找到如何编写有效的regex模式



 类似资料:
  • 我在读关于Java的垃圾收集和finalize()方法的书,有一些疑问引起了我的注意。抱歉,如果你认为这些怀疑真的很愚蠢。 > 垃圾收集器如何知道它需要执行?例如,我有一个部署在服务器上的应用程序,那么垃圾收集器什么时候执行?它是否定期执行,或者当一些(比如1MB)垃圾被收集并执行触发器时,或者它只是随机的,没有办法确定它什么时候执行? 由于垃圾回收机制没有发生,它如何降低应用程序的性能? 假设我

  • 本文向大家介绍String.replaceAll方法详析(正则妙用),包括了String.replaceAll方法详析(正则妙用)的使用技巧和注意事项,需要的朋友参考一下 前言 我通常是不太关心代码的具体实现的,因为我的开发语言很杂,倾向于一些最简单通用的方式去解决。今儿不小心在群里看到一位朋友发了下面的java代码,感觉自己还是很局限很无知的: 通过输出可以看到,这段代码的作用是把驼峰命名格式的

  • 问题内容: 我有一些旧的(损坏的)代码,使用* =进行了联接 这是左外部连接还是右外部连接?(我的错误消息表明它是其中之一) 问题答案: 而是利用

  • 问题内容: 我有一个代码, 我使用运行时锁定-解锁,因为我不希望例程1的打印与例程2混合使用。但是,执行上述代码后,其输出与没有锁定- 解锁的输出相同(意味着打印输出混合在一起)。谁能帮助我为什么这件事发生以及如何迫使这件事发生。 注意:我举了一个打印示例,但是有很多打印和发送事件。 问题答案: 如果您要 序列化 “打印某物”,例如,每个“打印某物”应自动执行,则只需对其进行 序列化即可 。 您可

  • 问题内容: 我有一个包含以下文本的字符串 我想将每个 孤立的 br 替换为 问题是我想避免将字符串转换为 我想做的是将字符串(使用replaceAll)转换为 我敢肯定这很简单,但是我的正则表达式不正确。 我的正则表达式 应该 找到“空白”,“ b”,“ r”,“空白”或“空白”,“ b”,“ r”,“行尾” 但是它错过了我字符串中的最后一个“ br” 我究竟做错了什么??TKS! 问题答案: 用

  • 本文向大家介绍有关Ajax跨域问题的两种解决方法,包括了有关Ajax跨域问题的两种解决方法的使用技巧和注意事项,需要的朋友参考一下 概述 Ajax跨域是前端开发中常见的问题,本文描述了以Google浏览器Chrome作为客户端和以Tomcat作为Web服务器的情况下的解决办法。 问题现象 当出现跨域访问的时候ajax通常会报类似如下错误: XMLHttpRequest cannot load ht