Java 如何在不使用数组的情况下拆分字符串?

Java 如何在不使用数组的情况下拆分字符串?,java,string,split,Java,String,Split,我在试着分开一根线 我一直在搜索,但我只发现了split与数组一起使用的情况,因此,例如,如果您有字符串“I love stackoverflow”并使用split,则输出将是[I,love,stackoverflow] 相反,我有一个格式为“URL\u cars\u es”的字符串,我只想要其中的es部分,因为我的数据库中有多个不同语言的文件,比如说我有“URL\u cars\u it”“URL\u cars\u nb”等等。我只需要拆分并只获取nb,es,it,这样我就可以将它传递到我的St

我在试着分开一根线

我一直在搜索,但我只发现了
split
与数组一起使用的情况,因此,例如,如果您有字符串
“I love stackoverflow”
并使用
split
,则输出将是
[I,love,stackoverflow]

相反,我有一个格式为
“URL\u cars\u es”
的字符串,我只想要其中的
es
部分,因为我的数据库中有多个不同语言的文件,比如说我有
“URL\u cars\u it”
“URL\u cars\u nb”等等。我只需要拆分并只获取
nb,es,it
,这样我就可以将它传递到我的
StorageReference
并获取不同的文件

我使用下面的代码获得
URL\u cars\u es

selecteditem =  adapterView.getItemAtPosition(i).toString();

如果您不想使用array/split,我还需要将其修剪/拆分为仅
es

。然后可以使用(给定字符最后一次出现的索引),然后使用该索引位置的子字符串

String s1   = "URL_cars_it";
int lastPos = s1.lastIndexOf('_'); // return the index of the last occurrence

s1 = s1.substring(lastPos + 1); // return `it`

如果不想使用数组/拆分。然后可以使用(给定字符最后一次出现的索引),然后使用该索引位置的子字符串

String s1   = "URL_cars_it";
int lastPos = s1.lastIndexOf('_'); // return the index of the last occurrence

s1 = s1.substring(lastPos + 1); // return `it`
那么这个呢:

String countryCode = es.split("_")[2] //only take the 3rd entry of the array
我现在脑子里没有
split()
实现,只是猜测它应该是上面的样子。

这个呢:

String countryCode = es.split("_")[2] //only take the 3rd entry of the array

我现在脑子里没有
split()
实现,只是猜测它应该是上面的样子。

另一种方法是使用以下方法删除
URL\u

输出:

es


另一种方法是使用以下方法删除
URL\u cars\u

输出:

es


您是否总是只需要字符串的最后两个字符?在这种情况下,您可以使用子字符串函数。您还可以查找正则表达式和
java.util.Pattern
是否始终只需要字符串的最后两个字符?在这种情况下,您可以使用子字符串函数。您还可以查找正则表达式和
java.util.Pattern
这是假设字符串总是分成3部分。如果使用不同的前缀,这可能会产生一个
IndexOutOfBoundsException
@MichaelDodd,这是绝对正确的。但是他说他的
字符串总是这样的。这是假设字符串总是分成3部分。如果使用不同的前缀,这可能会产生一个
IndexOutOfBoundsException
@MichaelDodd,这是绝对正确的。但是他说他的
字符串总是这样的。谢谢,我会像第一个一样检查这个字符串是否正确answering@IDroid让我知道,如果你有任何特定的需求,它不能满足,因为这是特定于你提到的场景。没关系,我之所以需要这个,是因为我正在用firebase数据库中的不同元素制作一个微调器,但我刚刚意识到,我无法从存储中获得语言环境或人们使用的语言,因为我正在制作另一个应用程序来管理用户与应用程序的交互方式。因此,我正在寻找一种解决方法,以获得不同的用户语言,感谢help@IDroid那么,这有帮助吗?或者你有其他的场景吗?这真的很有帮助,解决了我的问题,现在有了这一行,我可以从不同的语言中获得不同的信息,了解用户是如何与应用交互的,thanksthanks,会像第一行一样检查这一点answering@IDroid让我知道,如果你有任何具体要求,它没有实现,因为这是您提到的场景所特有的。没关系,我只是需要它,因为我正在用firebase数据库中的不同元素制作一个微调器,但我刚刚意识到,我无法从存储中获得语言环境或人们使用的语言,因为我正在使用另一个应用程序来管理用户与该应用程序的交互方式。因此,我正在寻找一种解决方法,以获得不同的用户语言,感谢help@IDroid那么,这有帮助吗?或者你有其他的场景吗?这真的很有帮助,解决了我的问题,现在有了这一行,我可以从不同的语言中获得不同的信息,了解用户是如何与应用交互的,谢谢