lastsky lastsky
关注数: 6 粉丝数: 101 发帖数: 912 关注贴吧数: 2
某知名网站的面试题,你会吗? 考察你的正则表达式功底,请为这个函数的每行代码加上注释: function Compile() { $var_regexp = "((\\\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)(-\>[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)?(\[[a-zA-Z0-9_\-\.\"\*\[\]\$\x7f-\xff]+\])*)"; $const_regexp = "([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)"; $nest = 5; $template = $this->TemplateString; $template = preg_replace("/(\<form.*? method=[\"\*]?post[\"\*]?)([^\>]*\>)/i", "\\1 \\2\n<input type=\"hidden\" name=\"FORMHASH\" value=*{FORMHASH}*/>", $template); $template = preg_replace("/\<\!\-\-\{(.+?)\}\-\-\>/s", "{\\1}", $template); $template = str_replace("{LF}", "<?=\"\\n\"?>", $template); $template = preg_replace("/\{$var_regexp\}/s", "<?=\\1?>", $template); $template = preg_replace("/$var_regexp/es", "addquote(*<?=\\1?>*)", $template); $template = preg_replace("/\<\?\=\<\?\=$var_regexp\?\>\?\>/es", "addquote(*<?=\\1?>*)", $template); $template = preg_replace("/[\n\r\t]*\{template\s+([a-z0-9_@\/]+)\}[\n\r\t]*/is", "\n<? include handler(*template*)->file(*\\1*); ?>\n", $template); $template = preg_replace("/[\n\r\t]*\{template\s+(.+?)\}[\n\r\t]*/is", "\n<? include \$this->TemplateHandler->template(\\1); ?>\n", $template); $template = preg_replace("/[\n\r\t]*\{eval\s+(.+?)\}[\n\r\t]*/ies", "stripvtags(*\n<? \\1 ?>\n*,**)", $template); $template = preg_replace("/[\n\r\t]*\{conf\s+(.+?)\}[\n\r\t]*/ies", "addquote(*<?=\$this->Config[\\1]?>*)", $template); $template = preg_replace("/[\n\r\t]*\{echo\s+(.+?)\}[\n\r\t]*/ies", "stripvtags(*<? echo \\1; ?>*,**)", $template); $template = preg_replace("/[\n\r\t]*\{elseif\s+(.+?)\}[\n\r\t]*/ies", "stripvtags(*<? } elseif(\\1) { ?>*,**)", $template); $template = preg_replace("/[\n\r\t]*\{else\}[\n\r\t]*/is", "\n<? } else { ?>", $template); for ($i = 0; $i < $nest; $i++) { $template = preg_replace("/[\n\r\t]*\{loop\s+(\S+)\s+(\S+)\}[\n\r]*(.+?)[\n\r]*\{\/loop\}[\n\r\t]*/ies", "stripvtags(*\n<? if(is_array(\\1)) { foreach(\\1 as \\2) { ?>*,*\n\\3\n<? } } ?>\n*)", $template); $template = preg_replace("/[\n\r\t]*\{loop\s+(\S+)\s+(\S+)\s+(\S+)\}[\n\r\t]*(.+?)[\n\r\t]*\{\/loop\}[\n\r\t]*/ies", "stripvtags(*\n<? if(is_array(\\1)) { foreach(\\1 as \\2 => \\3) { ?>*,*\n\\4\n<? } } ?>\n*)", $template); $template = preg_replace("/[\n\r\t]*\{if\s+(.+?)\}[\n\r]*(.+?)[\n\r]*\{\/if\}[\n\r\t]*/ies", "stripvtags(*\n<? if(\\1) { ?>*,*\n\\2\n<? } ?>\n*)", $template); $template = preg_replace("/[\n\r\t]*\{while\s+(.+?)\}[\n\r]*(.+?)[\n\r]*\{\/while\}[\n\r\t]*/ies", "stripvtags(*\n<? while(\\1) { ?>*,*\n\\2\n<? } ?>\n*)", $template); } $template = preg_replace("/\{$const_regexp\}/s", "<?=\\1?>", $template); $template = preg_replace("/\{\~(.+?)\}/s", "<?=\\1?>", $template); $template = preg_replace("/[\n\r\t]*\{ini\:(.+?)\}[\n\r\t]*/ies", "addquote(*<?=ini(\"\\1\")?>*)", $template); }
我们市长因为违规使用3000多块下课了 http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fwar.163.com%2F12%2F1127%2F03%2F8H9NK52300014OMD.html&urlrefer=d8097c0ea249419e1a0218190e75ce9c 新华网多伦多11月26日电(记者马丹)加拿大安大略省高等法院法官26日作出裁决,认定多伦多市长罗伯特·福特违反市利益冲突法规定,因此予以免职。 安大略省高等法院法官查尔斯·哈克伦德在判决书中说,福特在市议会就他是否应因他动用市府资源为其橄榄球慈善基金会募捐而支付一笔罚款作决定时发言并在表决时参加投票,此举违反市利益冲突法。 这项判决将在14天后生效。在此期间,福特可以留职,并向上诉法院提出上诉,要求在走完上诉程序之前延期执行判决。 2010年,多伦多市操守专员发现,时任市议员的福特利用印有官方抬头的信笺和其他市府资源,动员曾向他游说的人为以他名字命名的一个橄榄球慈善基金会捐款,违反了市议会行为准则。2012年2月,市议会就关于要求福特向捐款人退还3150加元(约合3165美元)的动议举行投票。福特不仅辩称捐款已用于向学校捐赠橄榄球器材,他不应自掏腰包偿还捐款,而且还参加了投票。最终,市议会否决了这项动议。2012年3月,多伦多市民保罗·马格德尔向法院指控福特违反了市利益冲突法有关民选官员不得就其有金钱利益的事务表态和投票的规定。 福特在担任多伦多市议员10年后于2010年底出任多伦多市长。
天娱传媒,请放下手中的屠刀-写在三姐妹离开时(转) 我一直以为,这个舞台的眼泪和微笑,只不过是瞬间的悲伤或者感动。那些明明灭灭的青春容颜,在绚丽的舞台上,自我绽放,却完全忘记了,黑暗中狰狞的笑容。那一刻,或者大家都是自愿的,与别人无关。而三江姐妹,三江姐妹,她们是不一样的。她们是那样的单纯,单纯到以为香格里拉外面的世界,都是善良的。她们是那样的淳朴,淳朴到自己已经无力支付住宿费而仍然要将别人的捐助请求捐助给家乡没有鞋子穿的孩子们。她们又是那么的善良,她们善良到举着自己被淘汰的选手牌唱完了母亲的摇篮曲,并施以下跪的大礼,面对无数爱她们和不爱她们的人。没有比真实更能触动人们最基本情感的东西了。        她们双手合十,跪下感谢的那一刻,一切都与她们没有了关系。唱歌、大山的梦想、孩子们渴望的眼神,这一切,回荡在成都的某个角落,久久不散。天娱传媒的幕后者们,这的确是你们想要的结果吧?这的确是你们安排的结果吧?你们开心了,你们大笑了,你们榨取了淳朴姐妹们最后可能的准商业价值,然后一脚揣开。你们手中那把闪亮亮的刺刀啊,扎进了每一个有着良心的人们的心里。让大家从此不再相信,这世界上还有纯净的东西。这已经无关超女,无关比赛,无关做秀。        当然,你们可以找出一万个理由来解释三江姐妹的离开,或许你们也根本不想解释,一句“比赛总会有输赢”便可以轻易打发,可是,我想说,这浮出水面的,却是你们越来越露骨越来越让人恶心的嘴脸。资本来到这世间,每一个毛孔都滴着血和肮脏的东西。你们在三江姐妹身上玩弄的,已经远非肮脏二字可以形容。这把亮闪闪的刀,阉割了你们仅存的道德,刺伤了无数人仅存的善念。没有人会认为三江姐妹会走上全国总冠军的位置,没有人认为她们会对你们力捧的青春玉女们造成任何实质的威胁。善良的人们所希望的,仅仅是她们可以走得更远一些,可以让更多的人知道僳僳族,知道原生态,知道中国的本土还有如此天籁般的不加雕琢的和声。这个要求很过分吗?难道她们的演唱已经没有办法再向前一步了吗?当我看到VCR出现电视台记者给小朋友们发铅笔的画面时,我已经料到了三姐妹的结局。因为天娱,你们的做作在这一刻已经到了极致,授人以好,堵攸攸之口。不要告诉我你们真的是为山区的孩子们送爱心去了。你们不远千里去往那里,不就是要给现场的三姐妹一个看上去很美的淘汰理由么?她们真的太善良了,她们远不能参透你们的心思,还是那么认真的唱着。甚至在VCR里三姐妹的大姐唱歌的时候,她们在遥远的成都回应着舞蹈。是的,这就是音乐的魅力,有了音乐,她们如此的美丽和生动。        三姐妹或许在台下已经被告知了结果,所以她们今天穿上的是海选时的服装,她们准备了祝酒歌,她们请来了漂再成都的家乡歌手。这一切,都太巧合了。大姐看到离开的号码牌时,并未出现许多人想象中的大把的泪水,当二姐一直举着那个有着“离开”字样的号码牌唱歌感谢的时候,我真的觉得那两个汉字是如此的丑陋。你们举起了闪亮的屠刀,却还要以感动的名义,逼着别人微笑。如此残忍,如此的鲜血淋漓。商业,商业真的必须要牺牲掉良心么?10强而已,一个分赛区10强而已。你让已经身无分文几乎算是流落成都街头2个月的三姐妹何去何从?你让那些盛装以待的父老乡亲们如何再相信外面的世界很精彩?你们以为自己长袖善舞,一切看上去似乎都很美丽,透着太平盛世的皆大欢喜么?你们错了,你们真的低估了善良的力量。当世界上最值钱的善良被拿来买卖的时候,你们,注定将活在别人的诅咒里。         一场歌声,始于感动,始于纯净。终于无耻,终于肮脏。天娱传媒,你们手中的屠刀,还要举得如此高高么?         遥远的日子里,我将永远记得三江姐妹砰砰的木桶声,她们纯净透彻的声音,她们善良得让人不知所措的笑脸和眼泪。心声:那么纯净优美的和声,她们差在哪?
1 下一页