Java 获取特定字符串值之前的单词
不久前我问了一个关于以下方法的问题,并提出了完全不同的问题。假设我有字符串Java 获取特定字符串值之前的单词,java,Java,不久前我问了一个关于以下方法的问题,并提出了完全不同的问题。假设我有字符串ab->C或ab->carry sum或xycin->Cout sum。如何提取->之前的单词而不包括->?然后提取->之后的单词 public void parseContactsLine(String line) { String[] words = line.split("->"); for(int i = 0; i < words.length; i++)
ab->C
或ab->carry sum
或xycin->Cout sum
。如何提取->
之前的单词而不包括->
?然后提取->
之后的单词
public void parseContactsLine(String line)
{
String[] words = line.split("->");
for(int i = 0; i < words.length; i++)
{
}
}
public void解析联系人行(字符串行)
{
String[]words=line.split(“->”);
for(int i=0;i
您对“->”的第一次拆分将把每边的单词列表分成两个字符串
然后可以使用.split(\\s)按空格重新拆分
获取每个单词的列表
你会以
String[] wordsAfterLambda = line.split("->")[1].split("\\s");
for(String s : wordsAfterLambda)
System.out.println(s);
请注意,我为每个使用了,而不是为
使用了,当不需要保留索引时,我倾向于使用
编辑
根据您的评论,[1]
是访问数组值,而不是链接到拆分本身,这与执行相同
String[] words = line.split("->");
String[] wordsAfterLambda = words[1].split("\\s");
看来你已经弄明白了,不是吗<代码>字符串[]单词=行。拆分(“->”)
正在为您存储它。拆分中的[1]是什么意思?@Nikolay第一个拆分返回一个数组,因此我使用[1]
@Nikolay split将分隔符作为参数来检索第二个值,这里我们要从“->”的每一侧检索,因此我们将其作为分隔符。然后我们用[1]
检索右边的部分,并用空格作为分隔符重新拆分它,以检索包含每个单词的数组。我想说的是为什么会有“test”?@Nikolay Oops,这是一个打字错误。。它应该是“line”。。编辑。