初学正则表达式,请教简单问题
看了一些关于正则表达式的文章,但不太明白,不知道怎么用,代码如何写,请高手给出代码点拨一下俺:
1.要判断一个字符串是否全是数字。
2.判断字符串是否以百分号(%)结束
3.将字符串中以 冒号及以后的字符串替换成_ 比如 0000:ABCDder909000替换后成0000_909000
问题点数:100、回复次数:11Top
1 楼hellwindy(夜神·月)回复于 2006-06-19 11:23:15 得分 20
1.要判断一个字符串是否全是数字。 正则[0-9]+
2.判断字符串是否以百分号(%)结束 正则$%
3.:ABCDder 正则^:???????Top
2 楼ttaallkk1(j2ee_lover)回复于 2006-06-19 11:35:45 得分 20
1.
/^[0-9]+$/g
2.
/^%$/g
3.
var pattern = /\:[a-zA-Z]*/i;
pattern.compile("\:[a-zA-Z]*","_");
大致这个意思
没有去查: %的匹配
Top
3 楼liujiwe79(专业做控件)回复于 2006-06-19 11:41:08 得分 0
1. 正则[0-9]+
2. 正则$%
3.:ABCDder 正则^:???????
Top
4 楼believefym(feng)回复于 2006-06-19 11:54:53 得分 20
import java.util.regex.*;
public class T060619 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Pattern p = Pattern.compile("^\\d+$");
Matcher m = p.matcher("12365");
System.out.println(m.find());
p = Pattern.compile(".*%");
m = p.matcher("asdfcc%");
System.out.println(m.find());
System.out.println("0000:ABCDder909000".replaceAll(":[a-zA-Z]*","_"));
}
}Top
5 楼zxhcloth(hima)回复于 2006-06-19 12:17:00 得分 30
"prentice1001 (徒弟) "你好!
1.要判断一个字符串是否全是数字:
String s1 = "123456787";
if (s1.matches("^\\d+$")){
System.out.println("matches");
} else {
System.out.println("not matches");
}
2.判断字符串是否以百分号(%)结束
String s2 = "asdjfl3435_.,?sjdfj%";
if (s2.matches("^(\\w|\\W)*%$")){
System.out.println("matches");
} else {
System.out.println("not matches");
}
3.将字符串中以 冒号及以后的字符串替换成_ 比如 0000:ABCDder909000替换后成0000_909000
Pattern p3 = Pattern.compile("\\:+[a-zA-Z]*");
Matcher m3 = p3.matcher("0000:adjflasjdfl9876");
String s3 = m3.replaceAll("_");
System.out.println(s3);
Thanks
HimaTop
6 楼sswater(光杆兵)回复于 2006-06-19 12:19:32 得分 0
推荐搂主看一篇简单易懂的文档:
http://www.regexlab.com/zh/regref.htm
Top
7 楼zhkchi(火焰神)回复于 2006-06-19 12:20:44 得分 0
比较欣赏believefym(暮色,miss,迷失,miss。。。) 他的做法。
Top
8 楼believefym(feng)回复于 2006-06-19 12:32:09 得分 10
修改第二个
p = Pattern.compile(".*%$");Top
9 楼wjs2338(Yesterday Once More)回复于 2006-06-19 13:14:42 得分 0
http://www.regexlab.com/zh/regref.htm 正则表达式参考文档Top
10 楼imnol(呼啦啦)回复于 2006-06-19 13:32:45 得分 0
upTop
11 楼xiaoxiao623()回复于 2006-06-19 15:05:41 得分 0
goodTop




