解析字符串
的最佳方法是什么实施例
SomeName_Some1_Name2_SomeName3
我想离开SomeName
。什么是最好的方法?使用substring
和计算位置或是另一种更好的方法
答案 0 :(得分:2)
您可以匹配模式SomeName
以进行提取 -
String str= "SomeName_Some1_Name2_SomeName3";
Pattern ptrn= Pattern.compile("SomeName");
Matcher matcher = ptrn.matcher(str);
while(matcher.find()){
System.out.println(matcher.group());
}
答案 1 :(得分:0)
_
split()
拆分它
答案 2 :(得分:0)
如果你知道分隔符,那么你可以试试这个:
System.out.println("SomeName_Some1_Name2_SomeName3".split("_")[0]);
另请参阅:String.split()
的Javadoc答案 3 :(得分:0)
取决于您的配置以及您是否对其他字段感兴趣。 在这种情况下,请使用_ separator分割字符串。
如果您只想要一部分字符串,我只是将indextring与'('_')结合使用。
如果你想要所有的出现,你也可以在文本中找到所有出现的'someName'。
答案 4 :(得分:0)
使用正则表达式和Pattern Matcher API获取SomeName。
答案 5 :(得分:0)
你走了:
String str = "SomeName_Some1_Name2_SomeName3";
String newStr = str.substring(0, str.indexOf("_"));
System.out.println(newStr);
输出:
SomeName
答案 6 :(得分:0)
String str = "SomeName_Some1_Name2_SomeName3";
String output = str.split ( "_" ) [ 0 ];
您将输出为SomeName。
答案 7 :(得分:0)
String your_String = "SomeName_Some1_Name2_SomeName3";
your_String = your_String.split("_")[0];
Log.v("log","your string "+ your_String);