当前位置: 首页 > 知识库问答 >
问题:

查找文件中出现最长单词的行号

燕翔飞
2023-03-14

你好,我需要找到文件中最长的单词出现的行号。如果有两个或两个以上长度相同的单词,那么只跟踪第一个。我已经跟踪了最长的单词,但我需要帮助找出最长的单词在哪里。这是我找到最长单词的代码

        while(scan2.hasNextLine()){
            String line = scan2.nextLine();
            if(line.contains(longestWord)){
                longestWordList.add(longestWord);
            }
            else{
                longestWordList.add(null);
            }
        }

共有1个答案

南门洋
2023-03-14

您需要跟踪当前行号、最长单词的行号和最长单词的长度。对于每一行,通过分割空格和标点符号将该行分割成一个单词数组。您可以使用正则表达式来执行此操作。然后看看每个单词是否比最长的单词长。如果发现新的最长单词,记录当前行号并记录新的最长单词长度。

int lineNumLongest = 0, lineNumCurrent = 0, longestLength = 0;
while(scan2.hasNextLine()) {
    lineNumCurrent++;
    String[] words = scan2.nextLine().split("[ .?!,;:/\\\\]");
    for (String word : words) {
        if (word.length() > longestLength) {
            lineNumLongest = lineNumCurrent;
            longestLength = word.length();
        }
    }
}
 类似资料:
  • 该程序提供输入命令行参数,这些参数是文本文件的名称,并返回基本统计信息,如字符数、单词数和行数、平均字长、每个字母的数量和字长。 我有一切工作,除了这个:查找和报告使用数组列表跟踪行号文件中最长的单词出现的所有行号,因为我们不知道最长的单词有多少次出现。如果有两个或两个以上长度相同的单词,那么只跟踪第一个。我该怎么做呢?

  • 问题内容: 我正在尝试查找文件中出现的单词数。我有一个文本文件(),文件内容如下: 我期望的结果是: 我使用的代码是: 我得到的结果是: 谁能帮帮我吗?提前致谢 。 问题答案: 使用计数器的方法。例: 输出:

  • 问题内容: 如何递归地查找字符串中最长的单词? 编辑 说完了,谢谢大家。这是修改后的代码。 问题答案: 首先,让我们假设句子字符串参数没有任何前导或尾随空格。您可以通过调用trim()来处理递归情况。 然后,我们需要定义两种情况,即基本情况和递归情况。 基本情况是找不到空格,即传入的句子只是一个单词。在这种情况下,只需返回句子即可。 在递归的情况下,我们将得到第一个单词,其余的则与您一样。在句子的

  • 问题内容: 我有一个文件(更具体地说是一个log4j配置文件),我希望能够读取该文件并在代码中挑选出某些行并替换它们。例如,在文件中,有一串文本,指示文件的存储目录或记录器的级别。我希望能够替换这些文本字符串而无需读入文件,将其写入另一个文件以及删除原始文件。有没有一种使用Java来查找和替换文件中文本的更有效方法? 这是我尝试使用的文本文件的示例: 我希望能够读取文件并将’DEBUG’替换为另一

  • 问题内容: 我有一个名为5列的表格。 我想使用该列查找要说的行:然后在该列中列出最受欢迎的单词。一个会是,另一个会是,但是我想看看与此相关的其他词。 样本数据: 结果(单字): 问题答案: 您可以通过一些字符串操作来提取单词。假设您有一个数字表,并且单词之间用单个空格分隔: 如果没有数字表,则可以使用子查询手动构造一个表: SQL小提琴(由@GrzegorzAdamKowalski提供)在这里。

  • 我正在写一个程序,使用扫描仪的方法读取文本文件,并输出:字数,句子数,平均每个句子的字数,最长的句子和最短的句子。到目前为止,除了最长和最短的句子,我什么都知道了,我似乎想不出来。这是我目前所掌握的... 如果有人能帮上忙,我将感激不尽!!