Java:如何在char之前返回字符串

fle*_*nIT 1 java string

我有以下字符串

String name = "John - Paul"
Run Code Online (Sandbox Code Playgroud)

所以我想做的是检索John(所有之前-).这就是我想,但我不能从之前检索-后,才

String parseName = name.substring(name.indexOf(" - ", -1), name.indexOf(" - ", 0));
Run Code Online (Sandbox Code Playgroud)

你是如何做到这一点的,有人可以解释一下(注意:我不想使用正则表达式)?

ass*_*ias 6

您正在混合起始和结束索引 - 您需要从第一个字符(索引= 0)获取子字符串,直到索引" - ":

String parseName = name.substring(0, name.indexOf(" - "));
Run Code Online (Sandbox Code Playgroud)