安徽新华电脑专修学院_安徽电脑培训_安徽电脑培训学校_合肥电脑培训

當前位置:首頁 > 網站舊欄目 > 學習園地 > 設計軟件教程 > D語言的正則表達式例子

D語言的正則表達式例子
2010-01-13 21:14:07  作者:  來源:

D語言的正則表達式例子

Java代碼
module regexp;  
 
import std.stdio : writefln;  
import std.regexp;  
import std.c.stdio;  
 
bool isalpha(char[] c)  
{  
    RegExp myRegExp;  
    myRegExp = new RegExp("^[a-zA-Z_]+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool isspace(char[] c)  
{  
     /* true if c is whitespace, false otherwise */ 
 
    RegExp myRegExp = new RegExp("^\\s+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool isdigit(char[] c)  
/* true if c is a decimal digit, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^\\d+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool ishexdigit(char[] c)  
/* true if c is a hexadecimal digit, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^[0-9A-F]+$", "");  
    /* If it were D code, "_" would also be valid */ 
 
    return cast(bit) myRegExp.test(c);  
}  
 
bool isoctdigit(char[] c)  
/* true if c is an octal digit, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^[0-7]+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool issymbol(char[] c)  
/* true if c is legal SQL symbol, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^[\\(\\)\\[\\]\\.,;=<>\\+\\-\\*/&\\^]+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool isDate(char[] c)  
/* true if c is a date, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("((((19){1}|(20){1})d{2})|d{2})[01]{1}d{1}[0-3]{1}d{1}", ""); //1900  
    return cast(bool) myRegExp.test(c);  
}  
 
bool isChinese(char[] c)  
/* true if c is a chinese string, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^[\u4e00-\u9fa5]+$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool iscnPhone(char[] c)  
/* true if c is a china phone code, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("\\d{3}-\\d{8}|\\d{4}-\\d{7}", "g");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool iscnMobile(char[] c)  
/* true if c is a china Mobile code, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^((\\(\\d{2,3}\\))|(\\d{3}\\-))?13\\d{9}$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool iscnZip(char[] c)  
/* true if c is a china ZIP, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("^[0-9]\\d{5}$", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
bool iscnIDcard(char[] c)  
/* true if c is a china ID card, false otherwise */ 
{  
    RegExp myRegExp = new RegExp("\\d{15}|\\d{18}", "");  
    return cast(bool) myRegExp.test(c);  
}  
 
unittest  
{  
    /* compile with the -unittest flag to run these tests */ 
 
    writefln("Testing functions...");  
 
    assert(isalpha("a") && isalpha("A") && !isalpha("9") && isalpha("_") && isalpha("R") && !isalpha("&"));  
 
    assert(issymbol("(") && issymbol(")") && issymbol("[") && issymbol("]") && issymbol(")") &&  
      issymbol("[") && issymbol("]") && issymbol("-") && issymbol("/") && issymbol("=") && issymbol("*") &&  
      issymbol(".") && !issymbol("a") && !issymbol("0") && !issymbol("Y") && !issymbol("\\"));  
 
    assert(isdigit("0") && isdigit("7") && isdigit("9") && !isdigit("A")  && !isdigit("^") && !isdigit("G"));  
 
    assert(ishexdigit("0") && ishexdigit("7") && ishexdigit("A")  && !ishexdigit("^") && !ishexdigit("G"));  
 
    assert(isoctdigit("0") && isoctdigit("7") && !isoctdigit("8")  && !isoctdigit("A")  && !isoctdigit("^"));  
 
    assert(isspace(" ")  && isspace("\t") && !isspace("o")  && !isspace(".")  && !isspace("5"));  
 
    assert(isChinese("中文")  && isChinese("哦") && !isChinese("*.")  && !isChinese("abcd")  && !isChinese("5"));  
 
        assert(iscnPhone("010-12345678")  && iscnPhone("0710-1234567") && !iscnPhone("01-12345")  && !iscnPhone("010-12")  && !iscnPhone("0314-123456") && iscnPhone("0314-12345678-90")&& iscnPhone("0314-12345678-901") && iscnPhone("012345-12345678-901") );  
 
        assert(iscnMobile("13123456789")&& !iscnMobile("139123456789") && !iscnMobile("*.")  && !iscnMobile("abcd")  && !iscnMobile("5")  );  
 
        assert(iscnZip("100081")&& iscnZip("012346") && !iscnZip("*.")  && !iscnZip("abcd")  && !iscnZip("5")  );  
 
 
    writefln("Functions tested successfully.");  
}  
 
void main()  
{  
    /* Compile with the -debug flag for this statement to run. */ 
 
    debug writefln("Main Program.");  
 

更多信息請登陸http://61.191.27.74:802/ 最后,歡迎加入http://61.191.27.74:802/的會員


安徽新華電腦學校專業職業規劃師為你提供更多幫助【在線咨詢
主站蜘蛛池模板: 排烟风机-屋顶风机-消防高温排烟风机-山东凯亿空调 | 凝汽器换管-胶球清洗装置-二次滤网_连灵动 | 生物发酵罐(细菌/植物/液体玻璃实验室发酵罐设备)CIP清洗罐,灭活罐「厂家」-安徽赛德齐瑞发酵罐品牌 | 戒网瘾学校-陕西正规戒网瘾-叛逆青少年教育学校-重生教育官网 | 医盟网-全国首家医疗信息化行业门户网站 | 西安泰富西玛电机有限公司总部-电机-高压电机-西玛电机-西安西玛电机-泰富西玛电机-西安电机厂-西玛电机销售 | 湖南净声源环保科技有限公司是一家专业从事噪声治理和建筑声学设计生态环境综合治理服务的企业,专业从事株洲电梯隔音治理,湘潭中央空调降噪处理,衡阳邵阳冷却塔噪音治理,岳阳常德大型风机噪声隔音降噪,张家界空压机噪声治理,益阳配电房变压器噪声治理,专业郴州永州工厂企业车间噪声治理,怀化娄底专业机械设备减振降治理,武汉噪音治理隔音降噪公司,孝感噪音治理,立式球磨机的噪声控制,专业隔音降噪公司,、以及各类机械动力设备减振降噪噪声治理的公司,同时为客户提供咨询与解决方案 | 漳州市鼎新拍卖有限公司 | 金属网帘|金属帘|装饰网帘|金属环网|金属幕墙网|金属垂帘|金属扣帘-安平县名图金属丝网制品有限公司 | 易众拍卖行-事故车拍卖,残值车拍卖,水淹车拍卖,全损车拍卖,修复车拍卖,碰橦车拍卖,瑕疵车拍卖,报废车拍卖,泡水车拍卖,拆车件拍卖,配件拍卖,火烧车拍卖,二手车拍卖专业线上平台 | 首页--南京俊全科技有限公司,环保监测无人机,大疆无人机,农用无人机,植保无人机,巡检无人机,无人机环境监测仪,消防,无人机,航拍测绘,固定翼无人机,无人机电力巡检,四旋翼无人机 | 上海博驰建筑科技工程有限公司 | 上海礼品公司_定制商务礼品_促销礼品_福利礼品_创意礼品_上海普田商贸有限公司 | 陕西筱润智能科技有限公司 干部人事智能档案柜 智能密集架 智能档案柜 部队选层文件智能柜 智能枪弹柜 财务智能档案柜 边防武警智能密集架 医院智能档案柜 部队选层文件智能柜智能枪弹柜 学校医院文件柜 企事业单位公检法智能文件柜 生产厂家-筱润智能科技有限公司 RFID射频智能密集架 全自动智能选层档案柜 智能密保柜 枪柜部队营房营具床桌椅办公家具 办公用品档案盒设备货架 全自动智能选层柜生产厂家-筱润智能科技有限公司 | 青浦区摄像头安装/青浦区无线网络覆盖/青浦区网络调试公司/青浦区IT外包公司/金山区网络维护公司/金山区防火墙调试公司 | 济宁山银煤矿机械有限公司,钻采工具,防爆电器,凿岩机械,风动工具,矿山机械,建筑机械,支护设备,通风防尘,铁路设备,仪器仪表,大型设备,矿用泵,钎具类,消防类,矿车类,配件区类 | 四字成语大全6000个,经典成语大全及解释,1000个50000个成语及解释 - 同鑫成语网 | 中科联航(江苏)-信息化监理|信息化咨询|信息系统项目管理|信息系统工程监理公司 | 通风方式信号控制箱_人防呼叫按钮_人防设备厂家–西安鼎兴自控工程有限公司 | 停车场收费管理系统,通道闸系统,门禁系统,东莞停车场收费管理系统,东莞通道闸系统,-东莞市骄阳交通设备有限公司 | 和部长一起去出差旅全程,构建和谐上下级关系-蜜桃视频 | 天空彩票天下彩,天空彩天空彩票免费资料,天空彩票与你同行开奖,天下彩正版资料大全 | 汽车标签|医疗标签|电子标签|手机电池标签|电脑电池标签|电源标签|耐高温标签|防静电标签|手机出厂膜|手机全裹膜|手机包裹膜|手机卖点膜|热转印标签|遮阳板标签|天势科技|-标签印制专家! | 履带式移动破碎站-移动筛分站-移动碎石机-破碎机_山东奥凯诺矿机 | 面粉加工成套设备|面粉加工设备|面粉加工机械|面粉机组设备-河南成立粮油机械有限公司 | 长春互联网运营值选星广传媒,长春短视频运营,长春新媒体运营,长春互联网运营,长春抖音运营,吉林视频号代运营,吉林快手代运营,短视频推广公司,公众号运营,微博运营,新媒体运营 | 交通标志牌-交通标牌-铝圆牌-铝三角片-铝滑槽-公路警示指示牌-方牌-高速道路反光牌毛坯-交通设施安全警示标识牌-路名指示限速限高牌-厂家加工交通标牌铝板半成品毛坯-上海吕盟铝业有限公司 | 泊头市鸿海泵业有限公司--导热油泵,高温油泵,沥青保温泵,圆弧泵,齿轮油泵,高粘度泵,自吸离心油泵,罗茨油泵为主的专业生产厂家 | 衡水物流网,衡水物流信息网,衡水物流公司,衡水货运专线,衡水专线运输车辆 | 金属探测机_食品金属探测仪_食品金属探测器_广东善安金属检测机 金属剪切机,金属打包机,废钢剪切机,废铁压块机,金属压块机,废纸打包机,重废龙门剪,废钢龙门剪,箱式剪,液压剪切机-瑞顿机械装备制造江阴有限公司 | 江苏吉宏特专用汽车制造有限公司_联合吸污车-下水道管道清洗疏通车-综合养护吸排车 | 联塑管代理,联塑管厂家批发,中财管总代理,康泰管代理,康泰管厂家批发-邯郸市中枢贸易有限公司 | 中国工业网_网络工业品牌 资讯创造价值 | 江门市振达机械制造有限公司_散货输送系统_全密封带式输送机 | 引流砂_铁钩料_吹氧管_涂层吹氧管_耐火涂层吹氧管-山东恒诚 | 屋顶式恒温恒湿机,新风管道除湿机|上海众有实业百科 | 滑动轴承_无油自润滑轴承_复合干式_含油铜套_石墨铜套-嘉善盛元自润滑轴承厂 | 箱包定制_广州箱包厂_双肩电脑背包_双肩旅行包_拉杆箱包_商务公文包_包包批发,深圳爱自由,礼品箱包定制,电话:400-0061-690 | 手术无影灯生产厂家-提供电动手术台,电动产床定制与批发-山东华辰医疗设备有限公司 | 双合金_注塑机_螺杆|炮筒|料管|料筒-广东海驰德塑胶机械有限公司 | 山东腾达源金属材料官网-耐磨板nm400,nm400耐磨钢板,nm500耐磨钢板切割,耐候板批发,高强板现货【价格】 |