2016-06-25 7 views
0

EditTextから単語やフレーズがある行を見つける方法を見つけようとしています。例えば、EditTextに以下の私が持って言うことができます:テキストエディットで単語が表示されている行を見つけよう

これはライン0

でこれは行1

ですこれは私が欲しいライン2

ラインであると私は取得したいですこのすべての情報

ユーザがテキストの行を追加または削除することができるので、これは、情報の行4

ラインでありますn私はいつも別の行にいても構いません。テキストの折り返しを無視して、「この情報」の検索をどのようにして、そのテキストが位置する行を得ることができるでしょうか。これは私がやろうとしていることの基本的な考えです。

あなたはスキャナでそれを行うことができ、線で文字列のラインを読む必要が
 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

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; 
    } 
} 
関連する問題