java - 如何更改java中的点(如果超过2个)?

标签 java string

如果超过 2,我想将点更改为 ""。所以我的意思是 hel.lo.txthe.l.l.o.txt 然后返回 hello.txt

我写的这个不是以“.”开始结束的。

int pointindex = filename.indexOf(".");
if (pointindex==0){     
    System.out.println("Point index :"+pointindex);
    String mystring=filename.substring(pointindex, 1);
    filename=filename.replace(mystring, "");
}

//end is "."
int extensions = filename.lastIndexOf(".");
String newfilename=filename.substring(extensions);
System.out.println(newfilename.length());
if ( newfilename.length()<2){
    System.out.println("Dont have extension, so filename end is"+".");
    int dotidx=filename.lastIndexOf(".");
    filename=filename.substring(0,dotidx);
    System.out.println(filename);
}

最佳答案

您可以在这里简单地操作String

String str = "he.l.l.o.txt";
int lastIndexOfDot = str.lastIndexOf('.');
String str1 = str.substring(0, lastIndexOfDot + 1);
String str2 = str.substring(lastIndexOfDot, str.length());
str = str1.replace(".", "") + str2;
System.out.println(str);

输出:

hello.txt

注意:您可以创建一个将 String 作为参数并返回所需的 String 的方法。

关于java - 如何更改java中的点(如果超过2个)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31406746/

相关文章:

java - 软键盘监听器

java - 为什么我的 Play 没有!显示验证错误?

java - 如何编写一个接受字符串但不允许数字的程序?

javascript - 在javascript中合并两个用连字符连接的字符串

python - 如何使用 Python 格式化带有三重引号的多行字符串?

java - Hibernate二级缓存进阶知识

java - 对声明: "Object references are passed by values in Java"的澄清

java - 删除除与正则表达式 java 匹配的内容之外的所有文本

Java 构造函数与方法引用的链接

sql - SQL Server 中的文本/字符串分析