「去掉字符串重复java」java去掉字符串中的符号
本篇文章给大家谈谈去掉字符串重复java,以及java去掉字符串中的符号对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
求: 用 Java 正则去掉字符串中重复出现的字符!
举例:
1、String str = "abcdeabcdeabcdeaaaaaadddddceeeeabcccccccacadaeec";
str = str.replaceAll(reg, "");
System.out.println(str);
2、str = str.replaceAll("(?s)(.)(?=.*\\1)", "");
(?s)(.)(?=.*\1)
3、(?s) 开启单行模式 DOTALL 让. 号匹配任意字符
(.) 任意字符 并捕获在第一组
(?=.*\1) 这是断言, 表示后面内容将是 任意个字符加上第一组所捕获的内容
这样,如果这整个式子匹配到,表示,第一个捕获组内容在字符串中,至少出现两次,替换为 "" 空串.
进行 全局替换后, 整个字符串所出现的字符将不重复。
另外:
正则表达式默认是从左向右匹配, java中似乎没有逆向匹配的选项
所以你可以先反转字符串, 然后replace, 然后再反转
如下
JAVA字符串中去重复字符串
import java.util.ArrayList;
import java.util.List;
public class $ {
public static void main(String[] args) {
String str = "教练教练裁判裁判裁判运动员运动员";
ListString data = new ArrayListString();
for (int i = 0; i str.length(); i++) {
String s = str.substring(i, i + 1);
if (!data.contains(s)) {
data.add(s);
}
}
String result = "";
for (String s : data) {
result += s;
}
System.out.println(result);
}
}
教练裁判运动员
怎样把java中字符串中的一个相同字符删除
你好 这个就是一个比较简单的算法题 , 你可以自己写
但是用Java语言就不需要了 , Java自带泛型相关的类 , 很有用
其中TreeSet集合能自动识别添加的是否重复 , 重复的将不会添加 , 很方便
以下是实现代码:
import java.util.List;import java.util.Scanner;public class DeleteRepeated { private String str; private TreeSetString noReapted;//带有String类型的TreeSet泛型 public DeleteRepeated() { Scanner in = new Scanner(System.in); System.out.println ("输入一个字符串:"); str = in.nextLine(); noReapted = new TreeSet(); } //清楚重复的数据 public void removeRepeated(){ for (int i = 0; i str.length(); i++){ noReapted.add(""+str.charAt(i)); //str.charAt(i)返回的是char型 所以先加一个""空格 , 转换成String型 //TreeSet泛型能保证重复的不加入 , 而且有序 } str = ""; for(String index:noReapted){ str += index; } //输出 System.out.println (str); } public static void main(String[] args) { DeleteRepeated dr = new DeleteRepeated(); dr.removeRepeated(); }}
去掉字符串重复java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java去掉字符串中的符号、去掉字符串重复java的信息别忘了在本站进行查找喔。