找到textedit中单词所在的行

时间:2016-06-25 03:41:24

标签: android android-edittext textview

我试图找出如何从EditText找到单词或短语所在的行。例如,假设我在EditText中有以下内容:

这是第0行

这是第1行

这是第2行

我想要的行,我想获得所有这些信息

这是第4行

由于用户可以添加或删除文本行,因此我想要的信息行总是在不同的行上。忽略文本换行,我如何能够搜索“此信息”并获取该文本所在的行。这是我想要做的基本想法。

        int line = /*what would I use to find the line the text is on*/
        int startPos = editText.getLayout().getLineStart(line);
        int endPos = editText.getLayout().getLineEnd(line);

        String theLine = editText.getText().toString().substring(startPos, endPos);

1 个答案:

答案 0 :(得分:1)

您需要逐行读取字符串,您可以使用扫描程序:

int lineNumber = 0;
Scanner scanner = new Scanner(editText.getText().toString());
while (scanner.hasNextLine()) {
    String line = scanner.nextLine();
    lineNumber++;
    if(line.contains("String you want")) { 
        System.out.println(lineNumber + " " + line);
        break;
    }
}