表示年月的正则表达式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了表示年月的正则表达式相关的知识,希望对你有一定的参考价值。
谁能帮我写个年月的正则表达式,不要日。格式如:201402
需要验证有效性
[0-9]2表示00-99之间
[01]表示接下来这个数只能是0或1,因为不存在22月32月之类的
[0-9]这个表示这个数在0-9之间的任意一个这个正则唯一的漏洞就是匹配00-19之间,但是没有00这个月,也没有13,19等月 参考技术A 这个正则表达式关键是后面的月份,月份只能是01-12,可以分解一下00-09或者10-12
这个给出年份在1000-2999的的正则表达式供你参考
[12]\d3(0[1-9]|1[0-2])
[12]\d3 -- 年份
(0[1-9]|1[0-2]) -- 月份本回答被提问者和网友采纳 参考技术B 20[\d]2(?:0[1-9]|1[0-2])
java数组匹配进行合成一个数组方法
比如我现在有3个类
分别为
class A
private String idcard;
private String name;
private String 户籍类型; //先用汉字标识
private String 出生年月;
//set get 方法省略
class B
private String 户籍类型;
private String 是否成年;
private String 发放金额;
//set get 方法省略
class C
private String name;
private String idcard;
private String 出生年月;
private String 户籍类型;
private String 是否成年;
private String 发放金额;
//set get 方法省略
然后我现在已经取到了 A 的人员数组和 B的标准数组
A[] a=xxx.queryinfos();
B[] b=xxxx.queryinfos();
C[] c=要包含这两个数组的某些需要的字段
我应该怎么样匹配然后放到C数组
可以先不说匹配的事情,就说我该怎么放进去;
求java 大神们教下,悬赏30,本人新手。希望详细点
C[] c=new C[N];
int x=0;
for(int i=0;i<a.length;i++)
for(int j=0;j<b.length;j++)
//匹配,a数组和b数组只有户籍类型相同,所以匹配时选择户籍类型匹配
if(a[i].户籍类型==b[j].户籍类型)
c[x].name=a[i].name;
c[x].idcast=a[i].idcast;
....
c[x].是否成年=b[j].是否成年;
...
//大概就是这个样子 参考技术A for(int i = 0 ; i<a.lenth ; i++)
c.idcard=a.idcard;
c.name=a.name;
c.户籍类型=a.户籍类型;
c.出生年月=a.出生年月;
for(int i = 0 ; i<b.lenth ; i++)
c.是否成年=b.是否成年;
c.发放金额=b.发放金额;
参考技术B 查询结果中处理,效率很低的。
//c[]的长度不确定是否和a、b一样长,这假设是a的长度一致。
for(int i=0; i<a1.length; i++ )
A a1= a[i];
//给c[i]想要的a1中的属性
for(B b1:b)
//如果b1是想要的,那给c[i]的属性赋相应的值
建立方法 C[] c=xxx.queryCInfos();
然后在底层的查询中,写两者合并的查询。
以上是关于表示年月的正则表达式的主要内容,如果未能解决你的问题,请参考以下文章