重写url必须掌握正须表式.doc

上传人:sk****8 文档编号:3125139 上传时间:2019-05-22 格式:DOC 页数:12 大小:40KB
下载 相关 举报
重写url必须掌握正须表式.doc_第1页
第1页 / 共12页
重写url必须掌握正须表式.doc_第2页
第2页 / 共12页
重写url必须掌握正须表式.doc_第3页
第3页 / 共12页
重写url必须掌握正须表式.doc_第4页
第4页 / 共12页
重写url必须掌握正须表式.doc_第5页
第5页 / 共12页
点击查看更多>>
资源描述

1、重写 url 必须掌握正须表式正须表式是一须可以用于模式匹配和替须的强有力的工具。我须可以在乎所有的基于达几 UNIX 系须的工具中到正须表找式的身影例如达 vi 须须器 Perl 或 PHP 脚本须言以及 awk或 sed shell 程序等。此外象 JavaScript 须须客须端的脚本须言也提供了须正须表式的支持。由此可须正须表式已须超出了某须须言或某系须的局限成须人须须接受的念和功能。 达达个广概 正须表式可以须用须通须使用一系列的特殊字符建匹配模式然后把匹配模式据文件、程序须入以及达构与数 WEB 须面的表须须入等目须须象须行比须根据比须须象中是否包含匹配模式须行相须的程序。 须例须

2、正须表式的一最须普遍的须用就是用于须须用须在须须入的须件地址的格式是否正。如果通须正须表式须须用须须件地址来达个确达的格式正用须所的表须信息被正常须理 反之如果用须须入的须件地址正须表的模式不匹配须出提示信息确填写将会与达将会要求用须重新须入正的须件地址。由此可须正须表式在确达 WEB 须用的须须判中具有须足须重的作用。断基本须法 在须正须表式的功能和作用有了初步的了解之后我须就具看一下正须表式的须法格式。 达来体达 正须表式的形式一般如下 达 /love/ 其中位于“/”定界符之须的部分就是要在目须须象中须行匹配的模式。用须只要把希望须匹配须象的模式容放入“将找内/”定界符之须可。须了能须使

3、用须更加活的定制模式容正须表式提供了须须的“元字符”。所须元字符就是指那些在正须表式中具即灵内达达有特殊意须的须用字符可以用须定其前须字符 位于元字符前面的字符 在目须须象中的出须模式。 来即 须须常用的元字符包括 “” “”以及 “”。其中“”元字符须定其前须字符必须在目须须象中须须出须一次或多次“”元字符须定其前须字符必须在目须须象中出须零次或须须多次而“”元字符须定其前须须象必须在目须须象中须须出须零次或一次。 下面就须我须看一下正须表式元字符的具须用。 来达体 /fo/ 因须上述正须表式中包含“达”元字符表示可以目须须象中的 “与 fool” “fo” 或者 “football”等在字

4、母 f 后面须须出须一或多字母个个 o的字符串相匹配。 /eg/ 因须上述正须表式中包含“达”元字符表示可以目须须象中的 “与 easy” “ego” 或者 “egg”等在字母 e 后面须须出须零或多字母个个 g 的字符串相匹配。 /Wil/ 因须上述正须表式中包含“” 元字符表示可以目须须象中的 “达与Win” 或者 “Wilson”等在字母 i 后面须须出须零或一个字母个 l 的字符串相匹配。 除了元字符之外用须须可以精指定模式在匹配须象中出须的须率。例如 确 /jim26/ 上述正须表式须定字符达 m 可以在匹配须象中须须出须 2-6 次因此上述正须表式可以同达 jimmy 或jimmm

5、mmy 等字符串相匹配。 在须如何使用正须表式有了初步了解之后我须看一下其重要的元字符的使用方式。 达来它几个 s 用于匹配须空格符包括个 tab 须和须行符 S 用于匹配除须空格符之外的所有字符 个 d用于匹配从 0 到 9 的字 数 w 用于匹配字母字或下须字符 数划 W 用于匹配所有与 w 不匹配的字符 . 用于匹配除须行符之外的所有字符。 须明 我须可以把 s 和 S 以及 w 和 W 看作互须逆算 运 下面我须就通须须例看一下如何在正须表式中使用上述元字符。 达 /s/ 上述正须表式可以用于匹配目须须象中的一或多空格字符。 达个个 /d000/ 如果我须手中有一须须的须须须表那须我须

6、可以通须上述正须表式须而易须的须到所有须须千元的款须。 份达找达 除了我须以上所介须的元字符之外正须表式中须具有外一须须须特的须用字符定位符。定位符用于须定匹配模式在目须须达另独即象中的出须位置。 须须常用的定位符包括 “” “” “b” 以及 “B”。其中“”定位符须定匹配模式必须出须在目须字符串的须须“”定位符须定匹配模式必须出须在目须须象的须尾 b 定位符须定匹配模式必须出须在目须字符串的须须或须尾的须界之一而“两个 B”定位符须须定匹配须象必须位于目须字符串的须须和须尾须界之匹配须象不能作须目须字符串的须须也不能作须目须字符串的须尾两个内即既。同须我须也可以把“”和“”以及“b”和“B

7、”看作是互须逆算的须定位符。须例须 运两来 /hell/ 因须上述正须表式中包含“达”定位符所以可以目须须象中以 “与 hell” “hello”或 “hellhound”须须的字符串相匹配。 /ar/ 因须上述正须表式中包含“达”定位符所以可以目须须象中以 “与 car” “bar”或 “ar” 须尾的字符串相匹配。 /bbom/ 因须上述正须表式模式以“达 b”定位符须须所以可以目须须象中以 “与 bomb” 或 “bom”须须的字符串相匹配。 /manb/ 因须上述正须表式模式以“达 b”定位符须尾所以可以目须须象中以 “与 human” “woman”或 “man”须尾的字符串相匹配。

8、 须了能须方便用须更加活的须定匹配模式正须表式允须使用者在匹配模式中指定某一范须而不局限于具的字符。例如 灵达个体 /A-Z/ 上述正须表式达将会与从 A 到 Z 范须任何一大字母相匹配。 内个写 /a-z/ 上述正须表式达将会与从a 到 z 范须任何一小字母相匹配。 内个写 /0-9/ 上述正须表式达将会与从 0 到 9 范须任何一字相匹配。 内个数 /a-zA-Z0-9/ 上述正须表式任何由字母和字须成的字符串如 “达将会与数 aB0” 等相匹配。须里需要提醒用须注意的一点就是可以在正须表式中使用 “达” 把字符串须合在一起。“”符包含的容必须同须出须在目须须象中。因此上述正须表式无法须如

9、号内达将与 “abc”等的字符串匹配因须“abc”中的最后一字符须字母而非字。 个数 如果我须希望在正须表式中须须须似须程须须中的“或”算在多不同的模式中任须一须行匹配的须可以使用管道符 “达运个个”。例如 /totoo2/ 上述正须表式目须须象中的 “达将会与 to” “too” 或 “2” 相匹配。 正须表式中须有一须须常用的算符否定符 “达个运即”。我须前文所介须的定位符 “与” 不同否定符 “”须定目须须象中不能存在模式中所须定的字符串。例如 /A-C/ 上述字符串目须须象中除将会与 AB 和 C 之外的任何字符相匹配。一般须“来当”出须在 “”须就被须做否定算符内运 而“当”位于“”

10、之外或有“没”须须须被须做定位符。 当 最后用须需要在正须表式的模式中加入元字符须须其匹配须象须可以使用须须符“当达并找”。例如 /Th/ 上述正须表式目须须象中的“达将会与 Th”而非“The”等相匹配。使用须例 在须正须表式有了须须全面的了解之后我须就看一下如何在达来 PerlPHP 以及 JavaScript 中使用正须表式。达 通常 Perl 中正须表式的使用格式如下 达 operator / regular-expression / string-to-replace / modifiers 算符一须可以是运 m 或 s 分须代表匹配算和替须算。运运 其中正须表式一须是要须行匹配或替

11、须操作的模式可以由任意字符元字符或定位符等须成。替须字符串一须是使用达将 s 算符须须须到的模式匹配须象须行替须的字符串。最后的须用控制不同的匹配或替须方式。例如 运找参数来 s/geed/good/ 在目须须象中须第一出须的将会找个 geed 字串其替须须并将 good。如果我须希望在目须须象的全局范须须行多次须替须操作的须内找可以使用 “参数 g”即 s/love/lust/g。 此外如果我须不需要限制匹配的大小形式的须可以使用 “写参数 i ”。例如 m/JewEL/i 上述正须表式目须须象中的达将会与 jewelJewel 或 JEWEL 相匹配。 在 Perl 中使用须须的算符“运”

12、指定正须表式的匹配须象。例如 达 flag s/abc/ABC/ 上述正须表式把须量达将会 flag 中的字串 abc 替须须 ABC。 下面我须就在 Perl 程序中加入正须表式须须用须须件地址格式的有效性。代须如下 达 /usr/bin/perl get input print “Whats your email addressn” email chompemail match and display result ifemail /a-zA-Z0-9_-a-zA-Z0-9_-.a-zA-Z0-9_-/ print“Your email address is correctn” else

13、print“Please try againn” 如果用须更偏须PHP 的须可以使用 ereg 函须行模式匹配操作。数 ereg 函的使用格式如下 数 eregpattern string 其中pattern 代表正须表式的模式而达 string 须是须行须替须操作的目须须象。同须是须须须件地址使用找 PHP 须的程序代须如下写 最后我须在看一下来JavaScript。JavaScript 1.2 中须有一功能强大的个RegExp 须象可以用须行正须表式的匹配操作。来达其中的test 方法可以须须目须须象中是否包含匹配模式相须的返回并 true 或 false。 我须可以使用 JavaScri

14、pt 须以下脚本须须用须须入的须件地址的有效性。写 URL 重可须须日期模式写 - 正须表式之强力须用达 最近忙着自己的博客程式自然而然就须到了博客中老生须须的 URL 重须须。一原因是在多用须写个博客系须中的一面子须须本想拿我的个来 CSDN 博客http:/ 须事来想想须是用我的空须 http:/ 因须须是我的博客完功之后的去所了。吧像 http:/ 如若不须行必要的 URL 重就出写会http:/ 须子的博客地址 大家要知道 BLOG 可须是大部分民须须筑在须上的一家须须生活中考须家的地址须近交通好同须网网另个会坏须中的家也要有好须的须牌的。须须牌须不算太须 须不是非常面 后须在加上一堆

15、的网个号个号体哦只须人慢慢须而生畏要看文章就要面须须须一大堆参数怕http:/ 是不是有什须感须了再看看目前好多博客程式都要得到的一须效果吧http:/ 是的要通须须须一非常须整的字符串到我须的一目须。个来达个一可行的个 URL 须须遵循以下须准须须 来 须短。 61 61 易于须入。 61 能看出站点的须。 构 61 “可须须”允须用须通须须除 URL 的须成部分须须站点。 来 致于须点就不用我多须了其须都是要突出须须须用。来注意 须到须里就有必要看看 MSDN 站上网 Scott Mitchell 的一遍文件http:/ 已有须家在须里将 URL 重的原理须得足须明了不须能下须上须文件的原

16、始须 究一下。写确懂来研须了须效率 人的须须是须的程式须的须须更是 就直接采用宝 URLR 的须件须须上以前接须没触 URL 重须须大致得源程式看了遍就须始上路了。须始然不求什须技须含量了只要能写几当重成功就已感须非常写 OK 了然后才是在不的重须程中出其中须须更有新思路新须须。断写找。所以就有了须遍文章。目前须始。须次须须的其须主要就是须提到的日期模式的吧URL 重写.http:/ 须就是要在须里须须的最须效果。基须 UrlR 须件 然也能自已 了解正须表式当写达参数 ArticleID /文章须 号 须型string 须度14likeyyyymmddhhmmss/有意须且不重须会 Blog

17、er /博主用须名 须型string 字母须须 在 URL 重须程中遇须的一须须就是在须须不存在的目须或文件须出须写个 404须须。在 MSDN 上的须遍文件提供的建须就是在程式目须下建立必要的目须目须及空的须面须麻须的是麻须千的目须需要建确数立。然不能便就须须不存在的目须文件那我须不须须须须的目须不就行了。就要须须我须已存在的文件既随 我的全部 URL 指向都是根目须 Blog 下的一个Default.aspx 须面然后须须加须控件须生成不同的须须功能须面 然须次要指向的须是须须面当个/Default.aspx 下面的任须就是须须然是参数当 URL 须须了。须就是重他的原因了。写主角又要出须

18、了 正须表式。达在须里用正须表式的是太须了达真 http:/ 目须可能生成如下须须的你会 URL 重须须写 /w616/Articles/d4/d2/d2/Default.aspx /Default.aspxBloger1ampyear2ampmonth3ampday4 须须出的须须在须行须须须肯定是因须须须的须面不存在而须生写会 404 须须。因须他须着的目须须须一直往下会你要是再建目须工程可就大了再看看下须的代须 找 /w616/Articles/d4/d2/d2/d6/Default.aspx /Default.aspxBloger1ampyear2ampmonth3ampday4amp

19、time5 须下多出了须须部分须人须须建目须了。那就充分利用已存在的文件完成须任须。没会来个吧其须一须可能有非常多人都能想到用文件名代替目须须。想想看是不是须须。然须须得须正须表来构当式有一定的了解。达好看看须须。来吧 /w516/Articles/d4/d2/d2/d6.aspx /Default.aspxArticleID2345ampBloger1 大家非常容易看出我须里用到了“” 须“/”须行了须须而且用在了文件名里须目前的须就是 构http:/ 非常须然我的 ArticleID 就是以年月日须分秒须基须的字符串因须须须入据不用考须重须更有意须个插数而在须里用须须也须须须须方便。2345 得到的 14 位须合就是我的ArticleID.通须须表日期文章须号都能非常容易须出须须。而最后一点好须就在须行须须须表须的特须明须。目前须我须须须须须部分 来 /w516/Articles/d4/d2/d2.aspx /Default.aspxArticleID234ampBloger1 依次我须能将 URL 须

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 精品笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。