急求!!!!用java 写一个 字符串去重 的程序!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急求!!!!用java 写一个 字符串去重 的程序!相关的知识,希望对你有一定的参考价值。

用java语言怎样将类似于这样的“人、药物、疾病、药物、疾病、人、药物、”的字符去重呀!我想要的结果是“人、药物、疾病、”,求大牛指点一下!

先通过标点符号分词,然后去掉重复的词语。
String str=“人、药物、疾病、药物、疾病、人、药物、”;
String[] ss=str.split("、");
Map<String,Boolean> sm=new HashMap<String,Boolean>();
List<String> l=new ArrayList<String>();
for(String s:ss)
if(!sm.containsKey(s))
l.add(s);
sm.put(s,true);


最后l就是你去掉重复的词组之后所得的文本。组合起来就行了。
参考技术A 先问下,只是单单的去除重复啊,要不要知道去掉了哪个
如果说单单是去除重复的话,

String str="人、药物、疾病、药物、疾病、人、药物";
String[] s=str.split("、");
Set<String> sSet = new HashSet<String>();
for(int i=0;i<ss.length;i++)
sSet.add(ss[i]);


//看看是否去掉了?
System.out.println(sSet.toString());

至于后面要组装成什么,看你了

好好利用Set的不重复的数据结构,

用java写一个程序,从一个很长的字符串中搜索出某一段字符,列出所有符合的字符

参考技术A import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RecE

Pattern pattern;
Matcher matcher;

/* ps:
字符类
[abc] a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](并集)
[a-z&&[def]] d、e 或 f(交集)
[a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](减去)
[a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](减去)

预定义字符类
. 任何字符(与行结束符可能匹配也可能不匹配)
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
*/
public void getMatchedPattern(String regx,String source)
pattern = Pattern.compile(regx);

matcher = pattern.matcher(source);
int index = 1;
while(!matcher.hitEnd())
if(matcher.find())

System.out.println("找到第"+index +"个"+matcher.group());
index++;


System.out.println("一共找到"+(index-1)+"组匹配项");


public static void main(String[] args)
new RecE().getMatchedPattern("love","ilove12what i love23e tolove dolove a efe");




结果:

找到第2个love
找到第3个love
找到第4个love
一共找到4组匹配项
参考技术B 用正则表达式,或者使用indexOf
String path = "E:\\SOFT\\Develop\\spring-framework-3.1.0.RELEASE\\dist";
String forFind = path;
String find ="soft";
ArrayList<String> temp = new ArrayList<String>();
while (true)

int index = forFind.indexOf(find);
temp.add(forFind.substring(index, index + find.length()));
forFind = forFind.substring(index + find.length());
if (index == -1 || forFind.length() < find.length())
break;
参考技术C 自己看正则表达式
就两三句代码
参考技术D 列出所有符合的字符
subStringof

以上是关于急求!!!!用java 写一个 字符串去重 的程序!的主要内容,如果未能解决你的问题,请参考以下文章

急求,用JAVA编写,键盘输入生日,用LocalDate写

用Java编写银行账户存取款业务,急求!!

c语言编程 写一个函数,实现两个字符串的比较,即写一个类似于strcmp功能的函数。急求,谢谢!

急求。。。C语言实现,计算字符串中子串出现的次数,就是先输入一个字符串,再输入一个上面字符串中存在

谁可以给我一个以C语言或者java写的两个客户端之间的聊天,服务器中转的聊天程序,急求啊~~~

急求java面试题