代码:
public class Test {
public static void main(String[] args) {
String html = "http://www.lehe.com/abc/d.php?id=456";
// 方法1(只能取出php,如果需要.php,还需要自己添加.):
String[] split1 = html.split("\\.");
String text1 = split1[split1.length - 1];
String substring1 = text1.substring(0, text1.indexOf("?"));
System.out.println(substring1);
// 方法2(和方法1类似):
String[] split2 = html.split("\\.");
String text2 = split2[split2.length - 1];
String substring2 = text2.split("\\?")[0];
System.out.println(substring2);
// 方法3(通过控制substring的开始下标可以控制是否取出.):
String[] split3 = html.split("/");
String s = split3[split3.length - 1];
String substring3 = s.substring(s.indexOf(".") + 1, s.indexOf("?"));
System.out.println(substring3);
// 方法4(不具有普遍性):
int start = html.lastIndexOf("/");
int end = html.lastIndexOf("?");
String substring4 = html.substring(start + 3, end);
System.out.println(substring4);
}
}
结果:
php
php
php
php
解释:
split方法中的[]
没什么特殊的含义,加和不加都可以