急急急c#语法分析

问题描述

我公司开发人员对一个代码库的修改历史。请用C#来编写一个词法分析(Parse)程序来提取以下要求的字段组成的修改纪录,并将结果写入一个或多个文件中。字段之间(field)用'|'分隔。具体分析的结果要求如下:a)每个纪录应包含下列字段:ChangeID:给每项修改记录分配一个唯一的序号。ChangedDate:提取原始修改记录中的MM/DD/YYYY格式的日期。ChangedBy:提取原始修改记录中紧跟在日期之后的开发人员名字。Summary:提取原始修改记录中由'*)'给出的修改摘要。Description:提取原始修改记录中由'Description:'给出的修改说明。Purpose:提取原始修改记录中由'Purpose:'给出的修改目的说明。ChangedFiles:提取原始修改记录中由'ChangedFiles:'给出的修改文件列表。AddedFiles:提取原始修改记录中由'AddedFiles:'给出的新增文件列表。b)请用'*)'作为一项修改的标示(而不是日期)。因为一个开发人员在同一天可以做多项修改。在同一日期下的多个'*)'应被分割成多个修改纪录。c)在"Description:"下可能会有多项由"-"给出的说明项。代码库的修改历史如下:ChangeHistory:11/12/2004,Simon*)Addedthisfile.11/16/2004,Johnason*)SupportsavingTDFfileChangedFiles:SystemConfig.cpp/hAddedfiles:TDF.cpp/hDescription:-AddNIST_SUPPORTincls_cls.cfg-Addcls_nist.cfg.Asampleandexplainationisputinmisc-AddanewclassCTDF,whichcallssomefunctionsoflscvt.libandtdf.lib.Comments:-CTDFneedtobeenhanced.Thebasicideaistouseabaseclassforiniting,readingexistingTDFfileandsavingrepackedTDFfile.Nobindingdata(avirtualfunction)inbaseclass.Threenewclasswillbederivedfromthebaseclasstobindthreekindsofdata:fromWinCtrlSet,cls_nist.cfg,images.ThenClsMainandClsDataEntrycancalldifferentclassastheyrequired.11/23/2004,Johnason*)FloridapaymentinterfaceChangedfiles:SystemConfig.cpp/hDescription:-ItmapFirstName,LastName,MidName,SufNamebefore.NowitonlymaptheNamefield.*)FlatAppVersionChangedfiles:SystemConfig.cpp/hDescription:-ReadnFlatAppVersioninCls_cls.cfg12/01/2004,Johnason*)Addcodetodeletetransactionsfromnist_ipa,nist_ipa_pm,nist_ipa_print,nist_ipa_print_pmChangedfiles:-SystemTrans.cpp-SystemTransNew.cpp-SystemTrans.hDescription:-Addonenewfunction:CLSTransDeleteException-CallthisnewfunctioninCLSTransDeleteRec()andCLSTransNewDeleteRec()-Inthiscase,thesefourtablesshouldnotbeputinINFO_TABLE.Beforeweputthemintoit,whichwillcauseabug:Whenthetransactionhasexceptionandhasbeenscanned,theexceptionwillberemovedifuserviewsdemoandsavesit.12/02/2004,Johnason*)AddconfigitemFLAT_PHOTOincls_scan.cfgChangedfiles:-SystemConfig.cpp-SystemDb.hDescription:-AddcodetoreadFLAT_PHOTOincls_scan.cfg.12/02/2004,Eric*)UpdatedlogicofcheckingFBIresponsesChangedfiles:-DaoQTransNew.cppDescription:-NewlogictocheckFBIresponse12/06/2004,Eric*)UpdatedCLSTransInsertEmailRec()Changedfiles:-SystemTrans.cppDescription:-ThevariableszTblRevneedsmemset12/08/2004,Eric*)AddednewSEND_OPTIONtocls_cls.cfgDescription:-Checkwhetherallmandatorydatahavebeencapturedandtransactionisreadyforsendingout-SEND_OPTION=11111100DataEntry|TP|Palm|Photo|Sign|DemoImage|Reserved|ReservedChangedfiles:SystemConfig.cpp/h,SystemTransNew.cpp/h12/09/2004,Eric*)AddednewCLEAN_WHEN_LOGOFFtocls_cls.cfgThisistodeleteallcompletedtransactionswhenlog-off(forUSSS-Child)Changedfiles:-SystemConfig.cpp/h12/10/2004,Johnason*)AddaconfigitemPALM_CHECK_VERSIONincls_scan.cfgChangedfiles:SystemConfig.cpp/hDescription:Thedefaultvalueis0.Ifitissetto2,usethenewalgorithmofpalmsequencecheck.12/11/2004,Johnason*)Addseverlparametersforpalmsequencecheckincls_scan.cfgChangedfiles:SystemConfig.cpp/hDescription:AddthemfornewalgorithmofpalmsequencecheckDefaultvaluesare012/13/2004,Johnason*)AddCHECK_IMAGE_BEFORE_SCANincls_scan.cfgChangedfiles:SystemConfig.cpp/hDescription:AddClsCfgScan.bCheckImageBeforeScanforCHECK_IMAGE_BEFORE_SCAN.Thedefaultvalueisfalse.*)Addamessageincls_msg.cfg.itisusetoshowamessagetoaskuserwhetherignoretheexistingimages.Changedfiles:LSGlobal.cppDescription:EnlargeCLSCfgMsgsizeto39,andaddthenewmessageitem.12/13/2004,Johnason*)FixalogicprobleminFilterChangedFiles:SystemTransNew.cpp,DaoQTransNew.cppPurpose:-Filterdidn'tworkforthetransactionsthatcamefrombridgeserver.-ReasonisintheFilterSQLstatement,itputthewrongconditionorderforANDandORstatement.Description:-ChangecodeinLoadNewQTrans,CLSTransNewLoadQfunctions-Addparenthesisesforconditionstatementandadjustthesequence.12/16/2004,Simon*)AddedanewfunctionCLSIoLogSprintftosupportflexibleloggingcapabilitywhichintroducesthedependencyoninclude/af_log.handgdslib/gd_pub.h.Changedfiles:SystemIo.cpp/h12/17/2004,Eric*)Addedanewconfigitemtocls_scan.cfg,FLAT_PALM_OPTIONALChangedfiles:SystemConfig.cpp/h*)Addedanewconfigitemtocls_scan.cfg,EXCEPTION_ALWAYSAlwayssaveexcpetiondata(ForMexico)Changedfiles:SystemConfig.cpp/h*)AddedanewfunctioncallCLSDbDeleteRecord()Changedfiles:SystemDb.cpp/h01/06/2005,Simon*)ChangeddatastructureCLS_CFG_CALLTABandfunctionsCLSCfgLoadCalltab()andCLSIoCallApp()tosupportapplicationmoduleinDLLmode;*)AddedfunctionCLSCfgGetFileNametogetconfigurationfileinordertoreduceredundantcode;*)Addedcls_*.cfgforreference.ChangedFiles:SystemConfig.cpp/h,SystemIo.cpp/hAddedFiles:cls_*.cfgDescription:-Newchangeskeepcompatiblewithpreviousinstallations.Onlywhenthebinaryextensionis'dll',thesystemwilltrytoloadthegivenDLLatruntimeandgetthefunction'StartDllModule'tolaunchtheDLLmodule.01/07/2005,Simon*)AddednewconfigurationitemUID_POLICYincls_login_ldap.cfgtocontrolbehaviorwhenuidcannotobtainedfromActiveDirectory.Purpose:ThischangeistoaccommodatechangesmadeincoldapitoeliminiatetherequirementofmaintainingUIDbyenduserssuchasUSSS.ChangedFiles:SystemConfig.cpp/h,cls_login_ldap.cfg01/10/2005,Eric*)IncreasedCLS_TRANS_NEWQ_TXSNO_LENto30inSystemTransNew.h,toenlargetrans_nobufferto30charlong*)UpdateCLSCfgGetAutoTransNo()inSystemConfig.cpp,tosupportautoserialas13charlong01/18/2005,Simon*)FixedfunctionprototypesofStartDllModuleforruntimeloading.ChangesFiles:SystemIo.h

解决方案

解决方案二:
看看编译原理,随便整个状态机就ok了我做过,难度不大

时间: 2024-11-05 12:24:15

急急急c#语法分析的相关文章

控件-mscomm串口波形绘制范例,求大神解析这三个函数,急急急,绘制波形图的原理是什么,拜托了

问题描述 mscomm串口波形绘制范例,求大神解析这三个函数,急急急,绘制波形图的原理是什么,拜托了 //串口void CPort_testDlg::OnComm() { //if(stop)return; VARIANT m_input1; COleSafeArray m_input2; long lengthi; BYTE data[600]; CString str; int ai=0bi=0ci=0di=0; int sum=0; if(m_Comm.GetCommEvent()==2)

方法-windows下praat源码编译问题!急急急急急

问题描述 windows下praat源码编译问题!急急急急急 从官网上下载的praat源码进行编译,按照网上说的方法编译,但是总是出现 make (e=2): 系统找不到指定的文件. make[1]: *** [libgsl.a] Error 2 make[1]: Leaving directory `d:/sources_5404/external/gsl' make: *** [all] Error 2 错误!试了各种方法,都没解决,望高手指点一下! 解决方案 你试了哪些方法?下面的方法试过

求数据库设计模板急急急

问题描述 求数据库设计模板急急急 自主选择一种系统,完成需求分析.概念设计.逻辑结构设计.规范化(3NF)及数据库的创建,并设计功能进行编程实现. 根据所选系统,自己设计多个功能,分别用存储过程.触发器完成. 存储过程或触发器的编程至少实现一个. 求好心人帮忙做一个,谢谢了 解决方案 应付作业最好能雇佣一个枪手帮你,像你这种费时不讨好的事情,想张口要现成的怕没人有时间帮你.既然网上找不到,就没办法了. 解决方案二: 好在你这种简单的需求,花个百把块钱在八戒网上发布下,很多人可以帮你做的. 解决方

怎么用java实现doc文档模板插入数据和表格并导出?急急急,在线等

问题描述 怎么用java实现doc文档模板插入数据和表格并导出?急急急,在线等 我要实现一个模板导出功能,模板包含标题和文字内容,模板中间还有一个表格,和结尾文字.要实现动态添加标题文字,其中表格中内容部分动态添加数据,可能会有多种模板,区别是表格样子不同,都要添加内容,最后整个导出doc文件.有没有demo?各位大神?谢谢了先.下面图片中红色框住部分是要动态添加数据的地方,其他地方是模板原型. 解决方案 下面是我实现的方式,用poi工具. /** * * @param filePath 源文件

急急急!!!Qt输出PDF,如何去除PDF底端页码

问题描述 急急急!!!Qt输出PDF,如何去除PDF底端页码 使用QPrinter+QTextDocument的方式输出PDF文件,如何去除底端的页码(默认是自动添加页码的)?? 解决方案 http://zhidao.baidu.com/link?url=CMFedAL3ZO9cm3vYgnpYZZdslu9NVtr5qN3m2WE5va7BHxO1qLkUE5dUaJ91U5jksOsdGuk-lN5PqVWm7oOnS_ 解决方案二: PDF自动生成页码 解决方案三: http://blog

串口通信校验问题-请教串口校验问题(急急急)

问题描述 请教串口校验问题(急急急) 使用串口精灵截获指令如下:(上位机->下位机)7E C1 02 03 58 C0 01 04 C3 01 09 E7 1E 7E7E C1 02 03 59 C0 01 04 C3 01 09 32 81 7E7E C1 02 03 5A C0 01 04 C3 01 09 5C 29 7E7E C1 02 03 5B C0 01 04 C3 01 09 89 B6 7E......基本都是这样的,当然也有的是发送和返回可以看出58.59....是累加的:倒

vb编程-vb窗口问题,急急急,在线等

问题描述 vb窗口问题,急急急,在线等 我需要做一个基础聊天窗口,一个输入框,一个输出框.在输入框中用不一样的字体输入后,输出窗的字体也变成一样的了.如何能让输出框显示不同的字体? 解决方案 把设置的字体样式也定义消息格式给输出框,比如<B>消息内容</B>就表示粗体 解决方案二: 到底谁和谁一样,谁和谁不一样.不管如何,你应该将格式控制符从聊天文本中单独提取出来加以处理.这个和编辑框是没关系的. 解决方案三: 输入框的Font属性设字体A,输出框的Font属性设字体B,

winform-请问C#用panel切换窗体是怎样的,急急急,先谢谢各位大侠啦

问题描述 请问C#用panel切换窗体是怎样的,急急急,先谢谢各位大侠啦 我设置了一个菜单和两个panel 1 和2,想分别显示窗体Form2和Form3,代码如下,但是结果没法进行切换,请问应当怎样写代码?新手,谢谢 private void 时间换算ToolStripMenuItem_Click(object sender, EventArgs e) { panel1.Controls.Clear();//移除所有控件 Form2 frm2 = new Form2(); frm2.TopLe

触发器插入问题,急急急!!!!!!!!!

问题描述 触发器插入问题,急急急!!!!!!!!! 有表test1(字段id,time),有表test2(字段id,time),如何写触发器将test1表中最新一条数据插入到表test2中 解决方案 建议下载工具,Navicat Premium,可以连接多种数据,在工具中,有专门写的触发器的地方.![图片说明](http://img.ask.csdn.net/upload/201503/11/1426060243_656360.png)