| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 286 人关注过本帖
标题:[求助]正规表达式
取消只看楼主 加入收藏
Angel198328
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-8-4
收藏
 问题点数:0 回复次数:0 
[求助]正规表达式

数据库 :ACC2000
bable1 表结构
字段名 数据类型
ID int
Date datetime

Date 字段下的当然是 Date 2006-08-19
但是因为种种原因,
此数据库的记录被手工修改过于是
有些记录不符合Datetime数据类型了! 比如 200-08-19
因此导致ACC2000向SQL2000 复制数据出错

问如何在ASP中应用正规表达式找到这些错误的数据,并返回其所在的ID字段的值?
跪求实现此功能的ASP代码!

急.....................

我只需要这是 yyyy-mm-ddde 的这种就可以了

'***********************************************
'以下为我找到的datetime正规表达式不知道能不用


这是yyyy-mm-dd hh:mm:ss 的
/^(\d{4})\-(\d{2})\-(\d{2}) (\d{2}):(\d{2}):(\d{2})$/ ;
这是 yyyy-mm-ddde 的
/^(\d{4})\-(\d{2})\-(\d{2})$/

function validateCNDate( strValue ) {
var objRegExp = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/


if(!objRegExp.test(strValue))
return false;
else{
var arrayDate = strValue.split(RegExp.$1);
var intDay = parseInt(arrayDate[2],10);
var intYear = parseInt(arrayDate[0],10);
var intMonth = parseInt(arrayDate[1],10);

if(intMonth > 12 || intMonth < 1) {
return false;
}

var arrayLookup = { '1' : 31,'3' : 31, '4' : 30,'5' : 31,'6' : 30,'7' : 31,
'8' : 31,'9' : 30,'10' : 31,'11' : 30,'12' : 31}

if(arrayLookup[parseInt(arrayDate[1])] != null) {
if(intDay <= arrayLookup[parseInt(arrayDate[1])] && intDay != 0)
return true;
}

if (intMonth-2 ==0) {
var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
if( ((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
return true;
}
}
return false;
}


搜索更多相关主题的帖子: 正规表达式 
2006-08-19 13:25
快速回复:[求助]正规表达式
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030411 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved