【问题标题】:Extracting substring in java that ends before a certain string在java中提取在某个字符串之前结束的子字符串
【发布时间】:2019-03-06 01:07:54
【问题描述】:

示例字符串: “鲍比是个很酷的人 // 不是真的”

我正在读取文件,假设我遇到了上面的字符串。我试图得到一个在“//”之前结束的子字符串,这将产生:“鲍比是一个很酷的人”,(请注意,在我的帖子中,我故意在“人”之后放了两个空格,但编辑器是'不捡起来-对不起)这样我以后可以更轻松地处理它。有什么办法可以将子字符串方法与java中的某种查找方法结合起来吗?我正在读取文件,但我不知道“//”可能会出现在哪个位置。我是否只需要先找到该位置,然后使用我通过 indexof 找到的那个位置再次使用子字符串?因为那将是 O(n^2),这并不理想;

【问题讨论】:

  • str.substring(0,str.indexOf(“//“));?

标签: java string search substring


【解决方案1】:

我必须在这里同意@achAmhain。他发布的解决方案是解决您的问题的最简单形式。当然,当您开始添加更多条件时,或者您尝试解析整个线程/文档时,它可能会变得更加复杂。

我不得不不同意最后关于时间复杂度的说法,

有人发了一个关于这个的问题,结果是 O ( n ) found here java indexof(String str) method complexity

现在这也取决于您的设计方式。

【讨论】:

    猜你喜欢
    • 2018-08-21
    • 2014-05-22
    • 2014-11-24
    • 2019-07-08
    • 2018-06-27
    • 2012-09-25
    • 2015-04-10
    • 2013-02-07
    • 2018-08-20
    相关资源
    最近更新 更多