高分求一正则表达式

cpoysy 2009-07-21 11:32:30
如一数组{10,20,30,40,50,60,70},我输入一个比较符号和一数字,如符号:">",数字:"39",则能将>39的所有数字均查出,请问这个正则怎样写?
...全文
112 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
rascalboy520 2009-07-21
  • 打赏
  • 举报
回复

public static void test(String str, int a) {
int b[] = {10,20,30,40,50,60,70};
if (str != null && str != "") {
if (str.equals(">")) {
int i = 0;
for (int d : b) {
if (d > a) {
System.out.println(d);
}
}
}
}
}
public static void main(String[] args) {
test(">", 40);
}
rascalboy520 2009-07-21
  • 打赏
  • 举报
回复
把输入的表达式转化一下就可以了,楼主可以写个转化的方法,用
if(">".equals(str)){
//用>号比较
}
cpoysy 2009-07-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 johnson_hong 的回复:]
这个和正则没有什么关系,你只需要把你的表达式分成比较符号和数字2部分,然后根据比较符号(字符)来决定比较的方式,如果都是比较符合+数字的格式,就很容易处理。
[/Quote]
怎么可能没关系呢?现在一段程序里面只能用正则,不能用简单的比较符号(如>,<,>=...)来比较数字大小(当然也有可能是字符或是汉字其它的),如题所示我如果输入 >= 39,则判定出来的40,50,60,70都符合要求。我就是要达到这个效果。
rascalboy520 2009-07-21
  • 打赏
  • 举报
回复
怎样想,也和正则没什么关系哦,楼主还是写个循环处理一下吧,
看楼主的意思好像是要写个工具类,
qsrock 2009-07-21
  • 打赏
  • 举报
回复
这个不需要正则表达式吧!直接判断咯
closewbq 2009-07-21
  • 打赏
  • 举报
回复
比较的字符也无非就那么几个,直接判断获取就行了。
Johnson_Hong 2009-07-21
  • 打赏
  • 举报
回复
这个和正则没有什么关系,你只需要把你的表达式分成比较符号和数字2部分,然后根据比较符号(字符)来决定比较的方式,如果都是比较符合+数字的格式,就很容易处理。
zhaolinger2 2009-07-21
  • 打赏
  • 举报
回复
正则表达式本身没有对数值进行大小比较的方法。
只能在表达式外面去做。
Johnson_Hong 2009-07-21
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 rascalboy520 的回复:]
把输入的表达式转化一下就可以了,楼主可以写个转化的方法,用
if(">".equals(str)){
  //用>号比较
}
[/Quote]
就是这个样子去做,
试问,就算你用正则表达式去判断出了哪个是比较符,你还是要写上面的那段逻辑啊,正则表达式无法根据这个符号决定去怎么比较啊。。。。逻辑还是要你自己写
scx0237 2009-07-21
  • 打赏
  • 举报
回复
标记下。期待更好的回答。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧