【发布时间】:2012-12-30 22:59:03
【问题描述】:
可能重复:
Replacing all non-alphanumeric characters with empty strings
import java.util.Scanner;
import java.util.regex.*;
public class io{
public static void main(String args[]){
Scanner scan = new Scanner(System.in);
String c;
if((c=scan.nextLine())!=null)
{
Pattern pt = Pattern.compile("[^a-zA-Z0-9]");
Matcher match= pt.matcher(c);
while(match.find()){
c=c.replace(Character.toString(c.charAt(match.start())),"");
}
System.out.println(c);
}
}
}
案例 1
Input : hjdg$h&jk8^i0ssh6
Expect : hjdghjk8i0ssh6
Output : hjdgh&jk8^issh6
案例 2
Input : hjdgh&jk8i0ssh6
Expect : hjdghjk8i0ssh6
Output : hjdghjk8i0ssh6
案例 3
Input : hjdgh&j&k8i0ssh6
Expect : hjdghjk8i0ssh6
Output : hjdghjki0ssh6
任何人请帮我弄清楚,我的代码逻辑有什么问题?
【问题讨论】:
-
在提交问题之前,请考虑查看 Java 命名约定并格式化您的源代码。
-
试试
[^a-z$]|[^A-Z$]|[^0-9$] -
@var___ 你为什么要用记事本写代码?
-
仅仅因为它在记事本中并不意味着您不能使用 Tab 缩进。 :p
-
@paranoid-android 我尽力了。