欧美天然调味品法规及发展趋势-圣琪酵母研发报告_第1页
欧美天然调味品法规及发展趋势-圣琪酵母研发报告_第2页
欧美天然调味品法规及发展趋势-圣琪酵母研发报告_第3页
欧美天然调味品法规及发展趋势-圣琪酵母研发报告_第4页
欧美天然调味品法规及发展趋势-圣琪酵母研发报告_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、欧美天然调味品法规及发展趋势山东圣琪生物有限公司 匹兹堡大学 严共鸿摘要:解决温饱与追求高质量的饮食文明一直推动着人类社会的进步。精细食品,多样化食品,能增加饮食色香味并刺激食欲的调味品因而应运而生。受多方面影响,调味品方面的政策法规比以往更加严格;受健康安全,产品可靠性等社会责任以及经济、环境和技术发展的影响,欧美饮食厂商根据消费者对天然,健康和新型产品的需求而不断创新。本文将阐述欧美国家的调味品法规的同时,在天然调味品方面的发展趋势方面做论述。关键词:酵母、酵母抽提物、法规 、标签、使用规范、天然调味品、味觉无聊Abstract: Solve the problem of food and

2、 clothing and the pursuit of high quality diet civilization has been driving the progress of human society.We need the fine food, diversified food, and the seasoning which can increase food color, flavor and stimulate appetite condiments. Affected by various, policy and regulations about seasoning a

3、re more strict than before. Under the influence of social responsibility and developments of economic, environmental and technological, european and american food vendors make HYPERLINK C:/Users/dell/AppData/Local/Yodao/DeskDict/frame/20150407101613/javascript:void(0); continuous HYPERLINK C:/Users/

4、dell/AppData/Local/Yodao/DeskDict/frame/20150407101613/javascript:void(0); innovations according to the consumers demand of natural, health and new products.Keywords: yeast, yeast extract, laws and regulations, labels, specifications, natural spices, taste is boring. 一、调味品的起源发展及欧美国家的食品法规1.1饮食文化催生了调味

5、品及相应法规的起源饮食是人类日常生活的重要组成部分。民以食为天,饮食水平乃人民生活质量高低的一个指标。解决温饱与追求高质量的饮食文明一直推动着人类社会的进步。精细食品,多样化食品,能增加饮食色香味并刺激食欲的调味品因而应运而生。世界文明古国很早就涉猎于这一领域并卓有成就。早在几千年前,自从有组织的农业出现就开始了基于酵母的技术开发。例如现今从古埃及贵族坟墓中发掘的工艺品和其它考古资料清晰地告诉我们面包和啤酒早已走进了古埃及人的餐桌。在中国调味品的出现也有3000年之久。距今1400多年前的齐民要术就详细记录了酱醋等酿造业的原理和技术要点。各国民间自酿调味品颇为盛行,历史悠久并积累了大量经验。目

6、前调味品广为全世界消费者接受并深受欢迎。Category types of NDIs received by FDA饮食也是影响健康的重要因素, 因此对饮食的监控向来受到社会的重视。欧洲和北美有其不同于东方的饮食文化,其食品日益方便化,健康功能化。欧美健全的法制也深深地体现在对饮食的监控。 其食品管理法规十分详细并与时俱进不断地修订完善。美国食品与药品管理局(FDA)是北美和欧洲食品安全的权威监察机构, FDA标准一直是世界各国引用的参考。FDA的食品安全和应用营养中心被称为人们健康饮食的保护伞,通过对厂商和批发商的检查,网络,消费者投诉,抽样化验分析和出现的毒害事件等信息监控市场上潜在的违法

7、产品(不安全的,假冒及误导性产品)。联邦食品,药品,化妆品法令于1958年食物添加剂修正案首次公布了食品添加剂的具体规定。鉴于食品安全监管的复杂性,也有其它一些工业界和政府机构致力于食品安全质量标准的监管。 例如香料及提取物制造商协会(FEMA, Flavors and Extract Manufacturers Association), FAO/WHO食品添加剂联合专家委员会(JEFCA),食用化学品典集(FCC),食品安全和应用营养中心Center for Food Safety and Applied Nutrition (CFSAN),美国农业部U.S.-Department-of-

8、Agriculture以及欧洲标准系统委员会。即便有这么多机构致力于饮食品成分的安全质量管理,但目前还没有产生一个通用的饮食成分监控规章。 1.2欧美特定饮食结构下形成的食品法规欧美饮食习惯决定了其特有的饮食品结构,主要包括各种酒精饮料,发酵粉,可可和巧克力制品,咖啡,食用色素,香料酱制调味品,乳制品(奶,奶酪,黄油,冰淇淋,果冻,奶油),各种油脂类,调味品制剂,果蔬及其制品,五谷和面包产品,肉类产品,盐醋茶水和甜味剂,海鲜水产品,家禽类产品,食用包装物及特殊饮食品(减肥食品,低能量食品,婴儿食品等)以及新型食品(如转基因食品)。欧美习惯性的营养快捷食品及清洁标记欧美食品法规对食品的生产工艺,

9、原料,应用,食品包装,标签,宣传说明,销售和进出口等都有明细的规定。例如,加拿大食品药品监管规章A01040对进口食品明文规定,任何个人不得违背该条例。海关检查员对待进关食品进行抽样检查,送样检测分析,如发现检测结果有违规章,检查员就会书面通知有关海关征收员和进口商。对待进口销售的违规食品,如果经改正后符合进口食品条例,可通告检查员使其能合法进口销售;对已进关的违规食品必须在自进关后三个月内更正并在此期间得到加拿大食品检验局主管的批示方能进行销售。1.3欧美国家对调味品的分类 调味品能赋予食品特殊的嗅觉味觉感官,在欧美食品结构中占有一定的分量。判断调味料是否天然,全球大多数机构追随美国或欧洲标

10、准。共同体立法(community legislation)将其分为不同类型,如天然调料,人造调料,动植物来源的调味品制剂,加工型调味品制剂(加热和熏制调味品制剂)。欧洲议会和理事会条例列出调味品在欧盟食品应用的基本规定,并授权调味品合法用于食品中,并规定调味品必须列在食品包装标签的成分表中。天然调料通常是单一的化学物质并对应于天然存在的材料。对用于调味品或调味品制剂中天然调料必须额外标明其最低保存期,存储及使用条件,生产厂商身份和其中含有的其他成分如添加剂。天然调味制品通常指制品中含有发现于天然来源的多种调料。 1.4欧美对天然调味品定义分类虽然美国与欧洲的监管类似,两者还是有明显的差异。例

11、如在美国定义为天然的重点是在于调料的天然来源性,而不强调所采取的工艺。来源于香料,水果,提取物,树脂油,水解蛋白,馏出物或其他一些烘培,加热或酶解产物或被FDA认定为天然原料的一类物质都被视为天然的。其制备方法没有明确限定,可采用一系列加工工艺,如蒸馏,萃取,烘培,加热或酶解,水解和发酵;特殊生物源限定在FDA联邦管理法规第21条(CFR), 对天然调味料对应的物质是否天然存在没有相应的要求。而在欧洲对天然调味料的限定更加严格,对采用的工艺有更多的限制。欧洲议会和理事会指令(EU directive1334/2008)列出了一系列准许生产天然调味料的工艺,相比于美国允许的工艺有更多的限制,其制

12、备必须采用获批的传统的食品制备工艺。欧洲要求天然调味料物质来源必须是动植物或微生物,但对特殊生物源的规定模糊。此外,欧洲要求天然调味料对应的物质要求是天然存在并已被确定,这些物质与天然存在物要一致,不能有改变。具体地要确保终产品中不同手性形式成分的比例也要与其天然存在的手性形式一致。比如,发酵工艺就可能导致产物与天然存在不同的旋光对映体混合成分。即使采用被欧美准许的工艺制备的调味料,如果其旋光对映体比例与天然存在不同,在欧洲就不能被视为天然的。这些差异还体现在对标签的要求。在美国标签天然成分描述为天然物或天然调料。而欧洲的描述往往更广泛。欧洲规定天然调料物质指经某些方式加工的单一高纯度物质,天

13、然调味制品指原料成分中存在多种成分的复合物。1.5欧美天然调味品的使用规范欧美对天然调味品界定一些调味品加到食品中,有利于保持或提高安全和新鲜,提高或保持营养价值,改善口感,质地和外观。FDA要求加到食品中的调味品应在产品中标签出来,是天然或人工的。当看到饮食品成分标称为天然时,我们最初的想法是这些成分来源于天然。然而由于新技术的应用,这些成分的制备方法比过去更加多元化,使得这些成分是否合格定义为天然成分变得模糊不清。此外对天然成分的定义在不同国家也不尽然。消费者呼求发行一个监控天然产品的统一标准,问题是并非缺乏相关的监管机构,而是这些机构采用不同的分类水平而使市场供需双方都很混乱。调味品在欧

14、美食品中广泛使用 FDA虽然还没有制定天然这个术语正式的定义,但给定了一个范畴。公司在做商业广告时一定要小心,不要滥用这个词汇。在美国就有不少不合理使用天然这个词汇而被法律起诉的教训。例如西夫韦公司(safeway)在加州联邦法院遭到错误广告的诉讼,因其推销的100%天然的产品中含有合成成分,而被认为误导了消费者。原告得知西夫韦公司的产品中含有化学添加剂酸式焦磷酸钠(SAPP),而认为受欺骗了。其理由是根据FDA法规所限定的天然这个概念的外在范围,如果产品中含有染料,人造调料或合成物质就不能被称为天然。“天然意味产品中不含合成的或人工成分。SAPP在食品工业中有多种功用,如防腐剂,发酵剂和保湿

15、剂,在欧洲分类为E450(i), 在美国也一般认为是安全的(GRAS). 公共利益科学中心(CSPI)指出过多消费磷酸盐导致饮食不平衡可能引起骨质疏松。在美国日常饮食中只有少量来自添加剂,因而对SAPP安全评价等级定义为非天然。这样西夫韦公司就败诉了。其它天然成分,如来源于植物而经加工的一些成分是否属天然也有争议。如果说一产品是“100%天然”就表明它是纯天然,是没有争议的,往往会引起法律纠纷。因此最好用“天然”来代替“100%天然”。欧洲过去将调味品分为天然,等同天然和人工调味品三类。而自2011年一月份开始实施的欧洲议会和理事会关于用于食品的调味品及食物成分新规章(EC NO 1334/2

16、008)将其分为天然的和非天然的两类。天然调味品指通过适当的物理,酶学,微生物工序从动植物或微生物获得的供人们使用的消费品。既可是原状态的产品,也可是经一种或多种传统的食品制备工艺获得的加工品。美国FDA定义的天然调味品在食品中的作用重在调味而不是营养,包括香精油,树脂油,香精或提取物,蛋白水解产物,馏出物,或其它经烘焙,加热或酶解的含有调味品成分的物质, 这些物质来源于香料,果蔬,食用酵母,草本植物,树皮,芽,根,茎,叶或类似的植物材料,肉,鱼,海产品,禽,蛋,乳制品以及发酵产品。人工调味品指的是具有调味品功效而不是来源于香料,果蔬,食用酵母,草本植物,树皮,芽,根,茎,叶或类似的植物材料,

17、肉,鱼,禽,蛋,乳制品以及发酵产品。如果食品含有人工调味品就要在其容器或包装物上加以说明,必须要让这种食品的购买或使用者易于看到这些说明。美国对天然调味品添加的标记规定对运送给食品制造商用于食品加工的调味剂的标记,除已获公布标准的调味剂按标准标签外,如果调味剂只有一种原料,应供述其通用名称。如果调味剂含有多种原料,可以供述它们的通用名称或者说“该产品中含有的所有调味剂原料都是获食品和药物管理规章所批准使用”。对任何不包含在此规章中的调味剂原料以及非调味成分,应在标签上分开列出来。如果调味剂含有一种天然香料,就要这样标记, 例如“草莓型”,“香蕉型”或者“天然草莓型”。如果调味剂既有天然香料又有

18、人工香料,就应这样标记, 例如“天然与人工草莓型”。如果调味剂只有人工香料,应这样标记,例如“人工草莓型”。对加有调味剂的食品,标签上应写明含有“天然调味品”或“人工调味品”或“混合型”。美国对于调味品添加应用范围的规定联邦管理法规准许直接添加到食品中的有食品防腐剂,涂料,薄膜和相关物质, HYPERLINK /cgi-bin/text-idx?SID=8dfcd6c0e149ec34f8ab144c3355370a&node=sp21.3.172.d&rgn=div6 特殊膳食和营养添加剂,如氨基酸,面包酵母蛋白,维生素D2,D3 等, HYPERLINK /cgi-bin/text-idx

19、?SID=8dfcd6c0e149ec34f8ab144c3355370a&node=sp21.3.172.e&rgn=div6 防结块剂,如硅酸钙,二氧化硅,调味剂和相关物质,如天然的,合成的香料物质,可可,鸟苷酸/肌苷酸钠盐,DL-丙氨酸,改性啤酒花提取物,金鸡纳碱,脱去黄樟素的檫木提取物,甜菜提取物,以及酵母,麦芽提取物。此外也准许加入 HYPERLINK /cgi-bin/text-idx?SID=8dfcd6c0e149ec34f8ab144c3355370a&node=sp21.3.172.g&rgn=div6 口香糖,口香糖胶基和相关物质, HYPERLINK /cgi-bin/

20、text-idx?SID=8dfcd6c0e149ec34f8ab144c3355370a&node=sp21.3.172.h&rgn=div6 其他特殊用途添加剂,如木质素磺酸盐和松香甘油酯等。以及 HYPERLINK /cgi-bin/text-idx?SID=8dfcd6c0e149ec34f8ab144c3355370a&node=sp21.3.172.i&rgn=div6 多用途添加剂,如乙酰氨基磺酸钾,脂肪酸,米糠蜡,改性食用淀粉,干酵母,面包酵母聚糖等。FDA对其应用也有明确规定。如干酵母(酿酒酵母,脆壁酵母)和干串酵母菌(产朊假丝酵母)安全用于食品中,其叶酸的含量不超过0.04

21、毫克每克酵母。众多的调味品广泛应用在欧美各国的饮食业。例如,欧美各国奶酪制品中加入各种调味剂形成丰富多彩的奶酪世界。FDA公布的食品佐料和调味品主要有法式生菜调味酱French dressing,蛋黄酱Mayonnaise, 色拉调味酱Salad dressing, 香草香料Vanilla flavoring系列产品等。美国对于调味品添加量的规定 联邦管理法规对调味剂和相关物质在食品上应用有规定。如天然调味品及天然佐剂为安全应用在食品中,要求是最低用量,并规定了130种不同来源调味品适当存在形态(流体/固体,浓缩,油,胶等)。合成调味品及佐剂为安全应用在食品中,联邦管理法规规定了其用量(要求最

22、低用量),同时公布了727种合成调味成分,既可单一使用也可与其它经事先批准的调味成分及佐剂混合使用。此外,-癸内酯和-十二内酯在单一使用及与人造黄油混合使用时其用量不能超过百万分之十和超过百万分之二十.在调味品中用作抗氧化剂的丁基羟基茴香醚不能超过调味品中香精油含量的0.5%。食品级含磺琥辛酯钠的可可用于混合饮料粉的调味剂时,磺琥辛酯钠含量不能超过成品饮料的百万分之七十五。 混合饮料粉应标签上适当的指南以消费者正确使用。鸟苷酸二钠在食品中用作调味剂的安全用量不超出产生预期效果的合理要求用量。在食品中用作调味剂辅料的肌苷酸钠盐,其可溶性钡含量不得高于百万分之一百五十。DL-丙氨酸用作酸浸混合物的

23、甜味剂鲜味剂,其用量不得高于加到卤水中的酸浸调味料的百分之一。改性啤酒花提取物可用作酿造啤酒的调味品,联邦管理法规公布了八种可行的制备工艺流程及监管标准。奎宁(金鸡纳碱)盐酸盐或硫酸盐用作充碳酸气的饮料调味品,其用量不能高于百万分之八十三,标签上要突出写明含有奎宁。脱去黄樟素的檫木提取物是来自檫木根皮的提取物,不含黄樟素,可用作食品调味剂。甜菜类提取物可用作食品调味剂。酵母麦芽提取物是以麦芽酶部分水解酿酒酵母,脆壁酵母和产朊假丝酵母而成。其核苷酸可高达百分之六(按质量),在食品中用作调味剂的安全用量以不超出产生预期效果的合理要求用量。1.6新型调味品的申报授权新调味品申报授权证书需要得到联邦管

24、理法规当局的批准。世界各地的监管机构对调味添加剂的安全评估的概念和方法起源于调味品料工业界,由调味品公司的科学家于上世纪六十年代早期所草拟。出于安全健康的考虑,对调味品的研究,调节和监控将会越来越严格。FDA和美国农业部食品安全和检验服务处(The Food Safety and Inspection Service (FSIS)对调味品安全使用负主要的法律责任。新调味品为获FDA批准,申请者必须提供产品的安全性证据。FDA主要考虑其物质成分和性质,通常的消费量,短期和长期的健康效果及各种安全因素,以避免可能出现的安全风险。食品的过敏性是其中一个考量因素。在美国主要有八种过敏原食物:奶 乳液,

25、蛋,鱼类, 甲壳类食物,坚果,小麦,花生和大豆。 欧洲有14种食物过敏原:含有麸质的谷物, 甲壳类食物,蛋类食物, 鱼类, 花生类食物, 大豆类食物, 奶类食物,坚果类食物,芹菜,芥末,芝麻籽, SO2浓度高于10mg/kg二氧化硫及亚硫酸盐,羽扇豆和贝类。2014年12月新规则要求在产品标签上通过黑体,下划线,标示记号或加引号注明。在欧洲新调味品申报须将申请信及两份技术档案材料寄送到位于布鲁塞尔的欧委会健康和消费者委员会食物链安全部门。同时全部申请材料(申请信,30份摘要文件,三份完整的技术档案材料)及其电子版寄送到位于意大利欧洲食品安全局食品添加剂及营养源部门秘书处。以备所需,申请者还要准

26、备额外的文件及电子复印件。申请不能秘密进行,不接受秘密呈递的文件。鼓励申请者尽量公开呈递的信息, 如将申请内容张贴到网上。欧洲食品安全局会根据申报的调味品种类,立体异构体,规格,摄取量,吸收,分布,代谢,排泄以及毒性(急性毒性,亚急性,慢性和致癌性研究,发育,生殖毒性,基因毒性)研究等进行综合评估,并定期公开申报的情况(待讨论及可能批准的情况)。二、欧美调味品业的发展新趋势2.1新的消费需求带来的研发新趋势安全、健康、天然、有机欧美调味品业的发展趋势为更安全(毒性,过敏),更健康,天然,有机。对调味品业管理法规也更为严格。调味品很早就在各种食品中展现其卓越的功效。古人用盐保存鱼肉,加草本植物和

27、香料以增加食物的香味,加糖保存水果,用醋酸泡黄瓜。调味品的发展是与社会的发展,人民的生活方式密切相关。消费者的需求,更直接影响调味品的发展趋势。现今消费者需求并享受更具营养,安全,方便,丰富多彩的和负担得起的色香味俱佳的食品。食品调味品及技术上的进步使其变为可能。用作食品的原料成千上万,FDA的数据库收录了三千多种原料,很多都是我们日常家用(如,糖,盐,苏打,酵母,各种色香调味剂等)。由于科学技术的进步使得食物的季节及地域差异没有了,现今我们一年365天都能享受到世界各地大多数种类食物,越来越失去对食品的新鲜感,出现了所谓的“感觉无聊”。新调味品研发趋势就是开发出新品质食品以重燃人们的食物感官

28、兴奋点,克服人们的味觉无聊。发展天然,有机,有利于消费者健康的调味品。近十年来,市场对天然调味品的需求更为强劲。欧美食品业广范使用盐,糖来增强饮食的口感,而出于健康的考虑,消费者需要减少其用量。厂商面临着新的挑战,既要减少盐糖用量,又不大影响产品的风味。现代生活的快节奏使得越来越多的人不愿花过多时间在烹调上,因此可与在家里做的饭菜色香味相匹配的加工食品也越来越受欢迎。尽管人工调味品也可有类似的味感,但天然调味品使其更加真实,可靠,更接近家庭制作的食物,市场销售也更好。研究新型配方获得高品质的天然调味品,如形形色色的有机的,更为独特的复合调味品,将会更好满足消费者对更真实可靠风味食品以及民族特色

29、食品的需求。增加天然调味品的稳定性会更多更好地扩大其应用。2.2人口迁徙带来的研发趋势新变化复合型调味品将成为主流全球调味品市场以年均5-6%速度增长,2013年产值为239亿美元,北美是最大的调味品市场,其次是亚太和西欧,欧美市场占了全世界的一半以上。调味品主要用于饮料和乳品行业。其中人工调味品,单一的调味品需求逐年下降。如味精基本不出现在欧美饮食品中。盐、糖、酱油等传统调味品消费量下降。天然调味品更受消费者欢迎。市场需求直接影响调味品产业的发展趋势。随着亚裔人口在欧美不断增加,东方风味在欧美的影响力也在增加。复合型调味品也在不断融合不同地域的调味品特色。总体看来,调味品倾向于复合型调味品发

30、展。2.3新技术的应用推动了天然调味品的来源范围与品质提升天然调味品不仅有动物,植物来源,微生物也是一个重要来源。现在直接从天然物质提取调味品越来越少。近十年来,越来越多地采用新技术工艺,如用生物酶,微生物代替化学合成工艺。生物技术应用于调味品业(工程酶,工程菌,工艺技术),增强了调味品风味特性的稳定性,持久性。现代技术在调味品产业大有作为,许多正在研究新技术将使得在以前是不可能实现的方式来制备调味品。例如1990年,FDA首次批准生物工程酶-高血压蛋白原酶(一直从牛胃中提取的),用来制作奶酪。利用生物技术使用简单的生物体生产食品添加剂,其成分与天然食品相同。许多新技术的应用,包括采用各种缓释

31、系统,如SDS酱油释放系统,DDS乳品释放系统,YDS酸乳品释放系统取代传统的溶剂如丙二醇,酒精和甘油,赋予调味品更好稳定性,使其风味更持久。具有新感官,精细加工,品质恒定,价格合理的高质量调味品。调味品风味更接近自然,使感觉更真实,更新鲜。酵母这种早已为人们认识并利用的微生物,是一种食品加工的酶源,本身就是一个生物反应器。通过合理的菌种筛选,条件优化,提取制备工艺技术革新,必将使人们餐桌上的饮食更加丰盛。很多高新技术公司,如位于济宁的山东圣琪生物有限公司,就致力于高产优质(I+G)酵母菌种筛选,工艺创新获得高品质的天然调味品。应用新生物技术制备调味品有利于环境保护。由此制备的调味品在进入商业

32、市场前需要繁琐的审批,但其长期的环保及经济上的好处超出其市场审批的高额代价。附录资料:不需要的可以自行删除 perl函数应用一、进程处理函数1、进程启动函数函数名eval调用语法eval(string)解说将string看作Perl语句执行。正确执行后,系统变量$为空串,如果有错误,$中为错误信息。例子$print = print (hello,worldn);eval ($print);结果输出hello, world函数名system调用语法system(list)解说list中第一个元素为程序名,其余为参数。system启动一个进程运行程序并等待其结束,程序结束后错误代码左移八位成为返回

33、值。例子proglist = (echo, hello,world!);system(proglist);结果输出hello, world!函数名fork调用语法procid = fork();解说创建程序的两个拷贝-父进程和子进程-同时运行。子进程返回零,父进程返回非零值,此值为子程序的进程ID号。例子$retval = fork();if ($retval = 0) # this is the child process exit; # this terminates the child process else # this is the parent process结果输出无函数名pi

34、pe调用语法pipe (infile, outfile);解说与fork合用,给父进程和子进程提供通信的方式。送到outfile文件变量的信息可以通过infile文件变量读取。步骤:1、调用pipe2、用fork将程序分成父进程和子进程3、一个进程关掉infile,另一个关掉outfile例子pipe (INPUT, OUTPUT);$retval = fork();if ($retval != 0) # this is the parent process close (INPUT); print (Enter a line of input:n); $line = ; print OUTP

35、UT ($line); else # this is the child process close (OUTPUT); $line = ; print ($line); exit (0);结果输出$programEnter a line of input:Here is a test lineHere is a test line$函数名exec调用语法exec (list);解说与system类似,区别是启动新进程前结束当前程序。常与fork合用,当fork分成两个进程后,子进程用exec启动另一个程序。例子 结果输出函数名syscall调用语法syscall (list);解说调用系统函

36、数,list第一个元素是系统调用名,其余为参数。如果参数是数字,就转化成C的整型数(type int)。否则传递字符串的指针。详见UNIX的帮助或Perl文档。使用syscall必须包含文件syscall.pl,即:require (syscall.ph); 例子结果输出2、进程终止函数函数名Die调用语法die (message);解说终止程序并向STDERR输出错误信息。message可以为字符串或列表。如果最后一个参数不包含换行符,则程序文件名和行号也被输出。例子die (Cannot open input file);结果输出Cannot open input file at mypr

37、og line 6.函数名warn调用语法warn (message);解说与die类似,区别是不终止程序。例子warn(Danger! Danger!n);结果输出Danger! Danger!函数名exit调用语法exit (retcode);解说终止程序并指定返回值。例子exit(2);结果输出无函数名kill调用语法kill (signal, proclist);解说给一组进程发送信号。signal是发送的数字信号,9为杀掉进程。proclist是进程ID列表。详见kill的UNIX帮助。例子结果输出3、进程控制函数函数名sleep调用语法sleep (time);解说将程序暂停一段时

38、间。time是停止的秒数。返回值为实际停止的秒数。例子sleep (5);结果输出无函数名wait调用语法procid = wait();解说暂停程序执行,等待子进程终止。不需要参数,返回值为子进程ID,如果没有子进程,返回-1。例子结果输出函数名waitpid调用语法waitpid (procid, waitflag);解说暂停程序执行,等待特定的子进程终止。procid为等待的进程ID例子$procid = fork();if ($procid = 0) # this is the child process print (this line is printed firstn); exi

39、t(0); else # this is the parent process waitpid ($procid, 0); print (this line is printed lastn);结果输出$ programthis line is printed firstthis line is printed last$4、其它控制函数函数名caller调用语法subinfo = caller();解说返回调用者的程序名和行号,用于Perl Debugger。返回值为三元素的列表:1、调用处的包名2、调用者文件名3、调用处的行号例子结果输出函数名chroot调用语法chroot (dir);

40、解说改变程序的根目录,详见chroot帮助。例子结果输出函数名local调用语法local($variable);解说在语句块(由大括号包围的语句集合)中定义局域变量,仅在此语句块中起作用,对其的改变不对块外同名变量造成影响。千万不要在循环中使用,否则每次循环都定义一个新的局域变量!例子结果输出函数名times调用语法timelist = times解说返回该程序及所有子进程消耗的工作时间。返回值为四个浮点数的列表:1、程序耗用的用户时间2、程序耗用的系统时间3、子进程耗用的用户时间4、子进程耗用的系统时间例子结果输出二、数学函数函数名sin调用语法retval = sin (value);解

41、说参数为弧度值。函数名cos调用语法retval = cos (value);解说参数为弧度值。函数名atan2调用语法retval = atan2 (value1, value2);解说运算并返回value1除以value2结果的arctan值,单位为弧度,范围在-PIPI。应用例:角度转化成弧度子程序。sub degrees_to_radians local ($degrees) = _; local ($radians);11: $radians = atan2(1,1) * $degrees / 45;函数名sqrt调用语法retval = sqrt (value);解说平方根函数。v

42、alue为非负数。函数名exp调用语法retval = exp (value);解说返回e的value次方。函数名log调用语法retval = log (value);解说以e为底的自然对数。函数名abs调用语法retval = abs (value);解说绝对值函数。(Perl 4中没有)函数名rand调用语法retval = rand (num);解说随机数函数,返回0和整数num之间的一个浮点数。函数名srand调用语法srand (value);解说初始化随机数生成器。保证每次调用rand真正随机。三、字符串处理函数函数名index调用语法position = index (stri

43、ng, substring, position);解说返回子串substring在字符串string中的位置,如果不存在则返回-1。参数position是可选项,表示匹配之前跳过的字符数,或者说从该位置开始匹配。函数名rindex调用语法position = rindex (string, substring, position);解说与index类似,区别是从右端匹配。函数名length调用语法num = length (string);解说返回字符串长度,或者说含有字符的数目。函数名pos调用语法offset = pos(string);解说返回最后一次模式匹配的位置。函数名substr调

44、用语法substr (expr, skipchars, length)解说抽取字符串(或表达式生成的字符串)expr中的子串,跳过skipchars个字符,或者说从位置skipchars开始抽取子串(第一个字符位置为0),子串长度为length,此参数可忽略,意味着取剩下的全部字符。当此函数出现在等式左边时,expr必须为变量或数组元素,此时其中部分子串被等式右边的值替换。函数名study调用语法study (scalar);解说用一种内部格式提高变量的访问速度,同一时刻只对一个变量起作用。函数名lcuc调用语法retval = lc(string);retval = uc(string);解

45、说将字符串全部转换成小/大写字母。函数名lcfirstucfirst调用语法retval = lcfirst(string);retval = ucfirst(string);解说将第一个字母转换成小/大写。函数名quotameta调用语法newstring = quotemeta(oldstring);解说将非单词的字母前面加上反斜线()。语句 : $string = quotemeta($string);等效于:$string = s/(W)/$1/g;常用于模式匹配操作中,确保字符串中没有字符被看作匹配操作符。函数名join调用语法join (joinstr, list);解说把字符串列

46、表(数组)组合成一个长的字符串,在每两个列表元素间插入串joinstr。函数名sprintf调用语法sprintf (string, fields);解说与printf类似,区别是结果不输出到文件,而作为返回值赋给变量。例子$num = 26;$outstr = sprintf(%d = %x hexadecimal or %o octaln,$num, $num, $num);print ($outstr);结果输出26 = 1a hexadecimal or 32 octal四、标量转换函数函数名chop调用语法$lastchar = chop (var);解说var可为变量或数组,当va

47、r为变量时,最后一个字符被删除并赋给$lastchar,当var为数组/列表时,所有元素的最后一个字符被删除,最后一个元素的最后一个字母赋给$lastchar。函数名chomp调用语法result = chomp(var);解说检查字符串或字符串列表中元素的最后一个字符是否为由系统变量$/定义的行分隔符,如果是就删除。返回值为实际删除的字符个数。函数名crypt调用语法result = crypt (original, salt);解说用DES算法加密字符串,original是将要加密的字符串,salt是两个字符的字符串,定义如何改变DES算法,以使更难解码。返回值为加密后的串。函数名hex调

48、用语法decnum = hex (hexnum);解说将十六进制数(字符串形式)转化为十进制数。函数名int调用语法intnum = int (floatnum);解说将浮点数舍去小数部分转化为整型数。函数名oct调用语法decnum = oct (octnum);解说将八进制数(字符串形式)或十六进制数(0 x.形式)转化为十进制数。函数名ord调用语法asciival = ord (char);解说返回单个字符的ASCII值,与PASCAL中同名函数类似。函数名chr调用语法$char = chr (asciival);解说返回ASCII值的相应字符,与PASCAL中同名函数类似。函数名p

49、ack调用语法formatstr = pack(packformat, list);解说把一个列表或数组以在实际机器存贮格式或C等编程语言使用的格式转化(包装)到一个简单变量中。参数packformat包含一个或多个格式字符,列表中每个元素对应一个,各格式字符间可用空格或tab隔开,因为pack忽略空格。除了格式a、A和外,重复使用一种格式多次可在其后加个整数,如: $twoints = pack (i2, 103, 241);把同一格式应用于所有的元素则加个*号,如: $manyints = pack (i*, 14, 26, 11, 83);对于a和A而言,其后的整数表示要创建的字符串长度

50、,重复方法如下: $strings = pack (a6 x 2, test1, test2);格式的情况比较特殊,其后必须加个整数,该数表示字符串必须的长度,如果长度不够,则用空字符(null)补足,如: $output = pack (a 6 a, test, test2);pack函数最常见的用途是创建可与C程序交互的数据,例如C语言中字符串均以空字符(null)结尾,创建这样的数据可以这样做: $Cstring = pack (ax, $mystring);下表是一些格式字符与C中数据类型的等价关系:字符 等价C数据类型CcharddoubleffloatiintIunsigned i

51、nt (or unsigned)llongLunsigned longsshortSunsigned short完整的格式字符见下表。 格式字符 描述a用空字符(null)补足的字符串A用空格补足的字符串b位串,低位在前B位串,高位在前c带符号字符(通常-128127)C无符号字符(通常8位)d双精度浮点数f单精度浮点数h十六进制数串,低位在前H十六进制数串,高位在前i带符号整数I无符号整数l带符号长整数L无符号长整数n网络序短整数N网络序长整数p字符串指针s带符号短整数S无符号短整数u转化成uuencode格式vVAX序短整数VVAX序长整数x一个空字节X回退一个字节以空字节(null)填充

52、函数名unpack调用语法list = unpack (packformat, formatstr);解说unpack与pack功能相反,将以机器格式存贮的值转化成Perl中值的列表。其格式字符与pack基本相同(即上表),不同的有:A格式将机器格式字符串转化为Perl字符串并去掉尾部所有空格或空字符;x为跳过一个字节;为跳过一些字节到指定的位置,如4为跳过4个字节。下面看一个和X合同的例子: $longrightint = unpack (* X4 L, $packstring);此语句将最后四个字节看作无符号长整数进行转化。下面看一个对uuencode文件解码的例子:1 : #!/usr/

53、local/bin/perl2 : 3 : open (CODEDFILE, /u/janedoe/codefile) |4 : die (Cant open input file);5 : open (OUTFILE, outfile) |6 : die (Cant open output file);7 : while ($line = ) 8 : $decoded = unpack(u, $line);9 : print OUTFILE ($decoded);10: 11: close (OUTFILE);12: close (CODEDFILE); 当将pack和unpack用于uue

54、ncode时,要记住,虽然它们与UNIX中的uuencode、uudecode工具算法相同,但并不提供首行和末行,如果想用uudecode对由pack的输出创建的文件进行解码,必须也把首行和末行输出(详见UNIX中uuencode帮助)。函数名vec调用语法retval = vec (vector, index, bits);解说顾名思义,vec即矢量(vector)函数,它把简单变量vector的值看作多块(维)数据,每块含一定数目的位,合起来即一个矢量数据。每次的调用访问其中一块数据,可以读取,也可以写入。参数index就象数组下标一样,提出访问哪一块,0为第一块,依次类推,要注意的是访问

55、次序是从右到左的,即第一块在最右边。参数bits指定每块中的位数,可以为1,2,4,8,16或32。例子1 : #!/usr/local/bin/perl2 : 3 : $vector = pack (B*, 11010011);4 : $val1 = vec ($vector, 0, 4);5 : $val2 = vec ($vector, 1, 4);6 : print (high-to-low order values: $val1 and $val2n);7 : $vector = pack (b*, 11010011);8 : $val1 = vec ($vector, 0, 4);

56、9 : $val2 = vec ($vector, 1, 4);10: print (low-to-high order values: $val1 and $val2n); 结果high-to-low order values: 3 and 13low-to-high order values: 11 and 12函数名defined调用语法retval = defined (expr);解说判断一个变量、数组或数组的一个元素是否已经被赋值。expr为变量名、数组名或一个数组元素。如果已定义,返回真,否则返回假。函数名undef调用语法retval = undef (expr);解说取消变量

57、、数组或数组元素甚至子程序的定义,回收其空间。返回值始终为未定义值,此值与空串等效。五、数组和列表函数函数名grep调用语法foundlist = grep (pattern, searchlist);解说与同名的UNIX查找工具类似,grep函数在列表中抽取与指定模式匹配的元素,参数pattern为欲查找的模式,返回值是匹配元素的列表。例子list = (This, is, a, test);foundlist = grep(/tT/, list);结果foundlist = (This, test);函数名splice调用语法retval = splice (array, slipelements, length, newlist);解说拼接函数可以向列表(数组)中间插入元素、删除子列表或替换子列表。参数skipelements是拼接前跳过的元素数目,length是被替换的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论