public static void main(String[] args) { String str = "She love ?? you !!\n\nHELL neck. THE you love the god!!!\n"; System.out.println(">>>>>>>>>>Original string<<<<<<<<<"); System.out.println(str); TreeSet res = fetchIt(str); System.out.println(">>>>>>>>>>>>>>Result<<<<<<<<<<<<<<"); Iterator it = res.iterator(); while (it.hasNext()) System.out.println(it.next()); }
public static TreeSet fetchIt(String s) { String delim = ",.?!;'\" \t\r\n\f<>/\\|}{[]`1234567890-=+_)(*&^%$#@!~"; StringTokenizer st = new StringTokenizer(s, delim); int count = st.countTokens(); TreeSet ts = new TreeSet(); for (int i = 0; i < count; i++) { ts.add(st.nextToken().toLowerCase()); } return ts; }
}// 上述实现中判断去除字符的方法比较弱,最好自己再另外写个方法处理。
// 改版:import java.util.*;public class TestWordFetcher {
public static void main(String[] args) { String str = "She love ?? you !!\n\nHELL neck. THE you love the god!!!\n"; System.out.println(">>>>>>>>>>Original string<<<<<<<<<"); System.out.println(str); TreeSet res = fetchIt(str); System.out.println(">>>>>>>>>>>>>>Result<<<<<<<<<<<<<<"); Iterator it = res.iterator(); while (it.hasNext()) System.out.println(it.next()); }
public static TreeSet fetchIt(String s) { String neat = getNeaterString(s); StringTokenizer st = new StringTokenizer(neat, " "); int count = st.countTokens(); TreeSet ts = new TreeSet(); for (int i = 0; i < count; i++) { ts.add(st.nextToken().toLowerCase()); } return ts; }
private static String getNeaterString(String str) { StringBuffer sb = new StringBuffer(); for (int i = 0; i < str.length(); i++) { if (isCharacter(str.charAt(i))) sb.append(str.charAt(i)); else sb.append(' '); } return sb.toString(); } private static boolean isCharacter(char c) { if (((int)c>=65&&(int)c<=90)||((int)c>=97&&(int)c<=122)) return true; else return false; }
怎么赋值. 谢谢了!
你可以参考一下
楼上的有理.
http://expert.csdn.net/Expert/topic/2945/2945504.xml?temp=.1984217
最好能给几个例子 谢谢了
public static void main(String[] args) {
String str = "She love ?? you !!\n\nHELL neck. THE you love the god!!!\n";
System.out.println(">>>>>>>>>>Original string<<<<<<<<<");
System.out.println(str);
TreeSet res = fetchIt(str);
System.out.println(">>>>>>>>>>>>>>Result<<<<<<<<<<<<<<");
Iterator it = res.iterator();
while (it.hasNext()) System.out.println(it.next());
}
public static TreeSet fetchIt(String s) {
String delim = ",.?!;'\" \t\r\n\f<>/\\|}{[]`1234567890-=+_)(*&^%$#@!~";
StringTokenizer st = new StringTokenizer(s, delim);
int count = st.countTokens();
TreeSet ts = new TreeSet();
for (int i = 0; i < count; i++) {
ts.add(st.nextToken().toLowerCase());
}
return ts;
}
}// 上述实现中判断去除字符的方法比较弱,最好自己再另外写个方法处理。
public static void main(String[] args) {
String str = "She love ?? you !!\n\nHELL neck. THE you love the god!!!\n";
System.out.println(">>>>>>>>>>Original string<<<<<<<<<");
System.out.println(str);
TreeSet res = fetchIt(str);
System.out.println(">>>>>>>>>>>>>>Result<<<<<<<<<<<<<<");
Iterator it = res.iterator();
while (it.hasNext()) System.out.println(it.next());
}
public static TreeSet fetchIt(String s) {
String neat = getNeaterString(s);
StringTokenizer st = new StringTokenizer(neat, " ");
int count = st.countTokens();
TreeSet ts = new TreeSet();
for (int i = 0; i < count; i++) {
ts.add(st.nextToken().toLowerCase());
}
return ts;
}
private static String getNeaterString(String str) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < str.length(); i++) {
if (isCharacter(str.charAt(i))) sb.append(str.charAt(i));
else sb.append(' ');
}
return sb.toString();
} private static boolean isCharacter(char c) {
if (((int)c>=65&&(int)c<=90)||((int)c>=97&&(int)c<=122)) return true;
else return false;
}
}// getNeaterString方法在返回值中将原字符串的非字母字符替换成空格。
// isCharacter方法用于判断字符是否是字母。