Slno:0 ahdhajdhjahdjahjdhahd <>
Slno:1 ahdhajdhjahdjahjdhahd <>
Slno:2 ahdhajdhjahdjahjdhahd <>
我想将前5个章程与“Slno:x”进行比较,其中x是整数。 如果满足该条件,我想打印其余的行。并删除最后一个&lt;&gt; 所以输出看起来像:
ahdhajdhjahdjahjdhahd
ahdhajdhjahdjahjdhahd
ahdhajdhjahdjahjdhahd
我尝试过:
如果所有charcaters的string1.charAt(1)=='S',则从string1 [5]打印到结束。 如果那条件是真的。寻找更好的逻辑
答案 0 :(得分:1)
如果我理解你的要求,我认为这样可行。试试这个:
public static void main(string..args) {
String s1= "Slno:0 ahdhajdhjahdjahjdhahd <>";
String[] sSplit = s1.split("\\s");
String f[]= sSplit[0].split(":");
;
if(f[0].equals("Slno") && checkInt(f[1])) {
System.out.println(sSplit[1]);
}
}
public static boolean checkInt(String i) {
try {
Integer.parseInt(i);
return true;
}
catch(Exception ex){
return false;
}
}
答案 1 :(得分:1)
你可以使用Regex和substring ..如果你的句子之间有空格: -
String s1 = "Slno:0 ahdhajdhjahdjahjdhahd <>";
if (s1.substring(0, 6).matches("Slno:\\d")) {
System.out.println(s1.substring(7, s1.length() - 3));
}
输出: -
ahdhajdhjahdjahjdhahd
答案 2 :(得分:0)
你可以试试这个,
示例:“Slno:0 ahdhajdhjahdjahjdhahd&lt;&gt;”
使用split
方法设置分隔符作为空格将句子拆分为三个部分。
StringOne = "Slno:0"
StringTwo = "ahdhajdhjahdjahjdhahd"
StringThree = "<>"
使用contains方法匹配输入。如果给定的输入与字符串的第一部分匹配,则打印字符串的第二部分。