我想从url获取whatevername.css,但我做错了,网址可能会改变,名字也可能是
www.asdasad.as/asdas/asdas/mystyles.css
asda.com/styles.css 等等
我已尝试过这个(但它不起作用“无法从结果为void的方法返回值”):
String fileName = "www.whateverpage.es/style.css";
int idx = fileName.replaceAll("\\", "/").lastIndexOf("/");
return idx >= 0 ? fileName.substring(idx + 1) : fileName;
答案 0 :(得分:0)
replaceAll
使用正则表达式作为参数并在正则表达式引擎中表示\
字面值,您需要传递\\
字面值,因此您需要将其写为"\\\\"
字符串
int idx = fileName.replaceAll("\\\\", "/").lastIndexOf("/");
要摆脱这种疯狂,请尝试replace('\\','/')
而不是replaceAll
。此方法不使用正则表达式,但只使用字符切换,因此您的代码看起来像
int idx = fileName.replace('\\', '/').lastIndexOf("/");
更新后修改
无法从结果为void的方法返回值
此错误是由于您的方法的返回类型为void
而不是String
。将您的方法声明从void yourMethodsName()
更改为String yourMethodsName()
。