早上好, 我是Java新手,我想剪掉这个字符串:
"jdbc:hsqldb:mem:testdb"
进入这个:
"testdb"
我用regex
尝试过,但我怎么说,我是新手,我不知道正则表达式的语法非常好。我试过这样的事情:
databaseName = databaseName.replaceAll("*.:", "");
System.out.println(databaseName);
如果有人能帮助我,我会很高兴的。谢谢你的回答
答案 0 :(得分:4)
如果您只知道上一个:
之后的所有内容,那么您只需使用
databaseName = databaseName.substring(databaseName.lastIndexOf(":") + 1)
当然你应该确保它实际上包含分隔符......
if (databaseName.contains(":")) {...
你也可以使用String#split
并抓住你想要的元素......
String parts[] = databaseName.split(":");
String name = parts[parts.length - 1];
答案 1 :(得分:3)
String[] str = yourString.split(":");
//str[str.length -1] is your answer.
答案 2 :(得分:2)
正如@MadProgrammer在评论中所说的那样,"不止一种方法可以剥皮鱼......" 。
如果您希望使用regex
为这条鱼皮肤,这将有效:
databaseName = databaseName.replaceAll(".*(?=:)?:","");