当前位置: 首页 > news >正文

网站改版合同wordpress 4.9.7 中文

网站改版合同,wordpress 4.9.7 中文,酷乐家居在线设计,怎么挂代理访问网站一、初识正则表达式 1、概念 正则表达式是对字符串操作的一种逻辑公式#xff0c;它会将事先定义好的一些特定字符#xff0c;以及这些特定字符的组合#xff0c;组成一个规则字符串#xff0c;并且通过这个规则字符串表达对给定字符串的过滤逻辑。 一条正则表达式也称为…一、初识正则表达式 1、概念 正则表达式是对字符串操作的一种逻辑公式它会将事先定义好的一些特定字符以及这些特定字符的组合组成一个规则字符串并且通过这个规则字符串表达对给定字符串的过滤逻辑。 一条正则表达式也称为一个模式使用每个模式可以匹配指定文本中与表达式模式相同的字符串。正则表达式由普通字符、元字符或预定义字符集组成其中普通字符包括大小写字母和数字。 常见用途 数据验证比如电话号码、邮箱等 替换文本快速找到特定文本用于替换 快速提取字符串基于匹配规则快速从文档中查找或提取子字符串 3、正则的用途举例 案例1 以下哪些是四大名著 A.西游记 B.三国演义 C.水浒传 D.红楼梦 你喜欢哪些课程 A.python B.java C.hadoop D.爬虫 执行3/2后的结果正确的是 A、1 B、1.0 B、1.5 B、0以上排版比较浪费空间将其变为一行 请将选项后面的.换成、 案例2 Zhangsan like orange or apple将or替换为and 二、基本语法 1、普通字符 正则表达式中的普通字符由没有显示的指定为元字符的打印和非打印的字符组成普通字符没有其它含义表示它本身。 举例 hello world匹配hello hello2、元字符 使用简单的元字符表达某一类字符下面列出常用的匹配方式 预定义字符类 元字符描述.**默认模式**匹配任何1个字符但换行除外**DOTALL模式**匹配任意字符\d一个数字[0-9]\D非数字[^0-9]\h水平空白字符[ \t\xA0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000]\H非水平空白字符[^\h]\s空白字符[ \t\n\x0B\f\r]\S非空白字符[^\s]\v垂直空白字符[\n\x0B\f\r\x85\u2028\u2029]\V非垂直空白字符[^\v]\w单词字符[a-z,A-Z,_,0-9]\W非单词字符[^\w] POSIX 字符类仅限 US-ASCII 元字符描述\p{Lower}小写字母字符[a-z]\p{Upper}大写字母字符[A-Z]\p{ASCII}所有 ASCII[\x00-\x7F]\p{Alpha}字母字符[\p{Lower}\p{Upper}]\p{Digit}十进制数[0-9]\p{Alnum}字母数字字符[\p{Alpha}\p{Digit}]\p{Punct}标点符号!#$%()*,-./:;?[\]^_{\p{Graph}可见字符[\p{Alnum}\p{Punct}]\p{Print}可打印字符[\p{Graph}\x20]\p{Blank}空格或制表符[ \t]\p{Cntrl}控制字符[\x00-\x1F\x7F]\p{XDigit}十六进制数字[0-9a-fA-F]\p{Space}空白字符[ \t\n\x0B\f\r] 举例 重庆大学 张三,ZhangSan 8000元 重庆万州 重庆大学 李四,Lisiq 8800元 重庆万州 重庆大学 王五,Wangwu 9800元 四川成都思考匹配工资信息 \d\d\d\d思考匹配中文姓名 \s\s, 其中,用于辅助定位思考匹配英文姓名 3、 转义字符 我们已经学了部分元字符比如. ? *等那如果我们想要查找元字符本身比如要查找. 或者 * 就出现了问题没办法指定它们因为它们会被解释成别的意思。这时就得使用 \来取消这些字符的特殊意义从而表示字符字面量。 元字符转义字符$\$.\.\*\*?\?^\^/\/\\\(\()\)[\[]\]{\{}\} 举例 script srcstudent.js/script script srcscore.xml/script取出文件名 \w\.\w 说明\w中的【】表示\w重复1次或多次。说人话能匹配1个或多个字母\.表示【.】的转义字符因为【.】在正则表达式中有特殊的含义举例 apples price is $10.01 per kg. apples price is $10.02 per kg.取出价格 \d\.\d4、字符集 在正则表达式语法中方括号表示字符范围也称字符集或者叫字符组。 字符类说明[abc]a、b、c[^abc]^ 表示取反除 a、b、c 以外的其它字符[a-zA-Z]- 表示连续匹配所有字母字符[0-9]- 表示连续匹配所有数字字符[a-c[x-z]]a到c或 x 到 z等价于 [a-cx-z]并[a-z[def]]表示and等价于 [def]交[a-z[^bc]]a到z但bc除外等价于[ad-z]差 举例 124 156 111 1337 92 20 999 666匹配所有的偶数数字 [02468]匹配所有的偶数 \d*[02468] 说明 \d*【*】匹配\d 0次或多次说人话匹配0个或多个数字 [02468]匹配1个偶数数数字5、量词 上面我们学会的是单个字符的匹配如果要表达多个类似的字符只能通过复制多次的方式比如我们要查找5个连在一起的数字要写成\d\d\d\d\d按程序员的思维显然不合理比如我们要表示1000个数字、任意多个数字、… 接下来介绍如何通过量词来表示上面的情形下面列出了几种量词的写法 量词含义举例X?X出现 0次 或 1次\d? 0个或1个数字XX出现 1次 或 多次\d1个或多个数字X*X出现 0次 或 n次\d* 0个或多个数字X{m}X出现 m次\d{3} 3个数字X{m,}X出现 至少m次\d{2,} 至少3个数字X{m,n}X出现 m~n次0\d{2,3} 0后面根2-3个数字 举例 ggle gogle google gooogle goooogle gooooogle goooooogle gooooooogle goooooooogle匹配上面所有的字符串 go*gle 说明 o*o可以出现0次或多次举例 重庆大学 张三,ZhangSan 80000元 重庆万州 重庆大学 李四,Lisiq 8800元 重庆万州 重庆大学 王五,Wangwu 9800元 四川成都思考匹配工资信息 \d思考匹配中文姓名 (\s), 说明【,】用于定位()表示分组方便后续通过分组编号取出这部分数据思考匹配英文姓名 ,(\w) 说明【,】用于定位()表示分组方便后续通过分组编号取出这部分数据举例 13612345678 13612345678abc 24654897132 12306123456匹配手机号码 简易版本 1[3456789]\d{9}$ 说明【$】表示以\d{9}也就是9个数字结尾具体用法见出面的边界。如果不写【$】13612345678abc也会被匹配6、边界 如何表示一个字符串的起始位置和结束位置呢这便是我们要讲的边界这里先给几个简单的边界表示 边界匹配器描述^一行的开头^hi.*以hi开头的行$一行的结尾.\.jpg$以.jpg结尾的行\b单词边界指的是占位的字符左右的间隙位置\bor\b匹配两边是边界的or\B非单词边界 注意 单词指的是 \w 可以匹配的字符即数字、大小写字母以及下划线 [0-9a-zA-Z_]边界 指的是占位的字符左右的间隙位置边界是零宽断言只匹配位置, 不匹配字符 举例 Zhangsan like orange or apple将or替换为and 【老师你也太坏了不我是让你爱上正则表达式】 查找框里写\bor\b 替换框里写and7、选择、分组和、向后引用 1选择或分支 正则表达式里的选择条件指的是有几种规则如果满足其中任意一种规则都应该当成匹配具体方法是用 | 把不同的规则分隔开。 X|Y 任何一个X或者Y比如要识别如下两种固话号码 0991-8585671 023-58102054 (0991)8585671 (023)58102054则可以写成 0\d{2,3}-?\d{7,8}|\(0\d{2,3}\)\d{7,8}2分组 概念 可以使用小括号( )来指定一个子表达式(也叫分组)例如 (http)(www.*com)(http)?(www.*com) http作为一个整体可有可无 组号 捕获组通过从左到右计算它们的左括号来编号 例如在表达式 ((A)(B(C))) 中有四个这样的组 1号分组((A)(B(C))) 2号分组 (A) 3号分 (B(C)) 4号分组 (C) 注意分组编号是从1开始的0号分组代表整个表达式例子 还记得刚写的两种固话的匹配吗可以写成 (\(0\d{2,3}\)|0\d{2,3}-?)\d{7,8}3分组捕获与后向引用 作用将前面分组匹配到的结果内容以组号的方式引用给到后续表达式继续使用。 说明默认情况下每个分组会自动拥有一个组号规则是从左向右以分组的左括号为标志第一个出现的分组的组号为1第二个为2以此类推。 例子 请找到出左右对称的信息 welcome hello 你好 吃了吗例子 匹配重复单词的字符串 go go kitty kitty\b(\w)\b\s\1\b 说明\1中的1表示组号在这里表示(\w)的匹配结果8、贪婪、懒惰 先来看个例子 123abc123456abc如果想找出123abc和123456abc两个字符串你兴奋的写下了.*abc结果发现只匹配了一次把整个字符串匹配了。这便是我们要讲的匹配模式。 1贪婪 当正则表达式中包含能接受重复的限定符时通常的行为是在使整个表达式能得到匹配的前提下匹配尽可能多的字符这被称为贪婪匹配 示例a.*b它将会匹配最长的以a开始以b结束的字符串。如果用它来搜索 aabab的话它会匹配整个字符串aabab。 属于贪婪模式的量词也叫做匹配优先量词包括“{m,n}”、“{m,}”、“?”、“*”和“”。 2懒惰 如果想要匹配尽可能少的字符呢这就是懒惰匹配模式。 只要在量词后面加上一个问号?就可以了。 比如前面的示例你只需要将正则表达式写为如下形式即可 .*?abc懒惰匹配总是出现在有量词的地方有如下懒惰量词 语法描述*重复任意次但尽可能少重复?重复1次或更多次但尽可能少重复??重复0次或1次但尽可能少重复{n,}?重复n次以上但尽可能少重复{m,n}?重复m到n次但尽可能少重复 注意 问号(?)问号有两种场景 一是以量词方式使用表示?前面的子表达式或者字符出现1次或者0次二是出现在量词后面表示懒惰匹配。 三、在String类中使用正则 String类提供了3个实例方法支持正则操作 ① matches 匹配 boolean matches(String regex)判断此字符串是否与给定的 正则表达式 匹配。例如 // 判断是不是一个正确的电话号码 String tel 023-58580000; boolean matches tel.matches(\\d-\\d); System.out.println(matches);② split 拆分 String[] split(String regex)围绕给定 正则表达式 的匹配项拆分此字符串。String[] split(String regex, int limit)围绕给定 正则表达式 的匹配项拆分此字符串。例如 // 按正则对字符串进行拆分 String stuInfo zhangsan china-cq 1985/11/12; //String[] rst stuInfo.split( |-|/); String[] rst stuInfo.split([ -/]); for (String item : rst) {System.out.println(item); }③ replace相关 String replace(String old, String new)String replaceFirst(String regex, String replacement)使用replacement替换regex的第一个匹配。String replaceAll(String regex, String replacement)使用replacement替换regex的所有匹配。例如 (86)023-12345670 021:12345671 010-12345672 需要得到如下结果 (023)12345670 (021)12345671 (010)12345672String stuInfo (86)023-12345670021:12345671010-12345672;String string stuInfo.replaceAll((\\(86\\))?(\\d{3})(-|:), ($2)); System.out.println(string);四、Pattern类和Matcher类 Matcher类不能单独使用用于配合Pattern类。Pattern类根据正则表达式创建匹配规则Matcher根据匹配规则执行具体的匹配操作。 1、创建匹配模式规则 使用 Pattern.compile() 静态方法编译正则表达式字符串形成模式对象匹配规则 static Pattern compile(String regex)将给定的正则表达式字符串编译成一个模式。 static Pattern compile(String regex, int flags)将给定的正则表达式字符串编译成具有【给定标志】的模式。【flags可以取以下值】Pattern.CANON_EQ 启用规范等价。Pattern.CASE_INSENSITIVE 启用不区分大小写的匹配。【重要】Pattern.COMMENTS 模式中允许空格和注解。Pattern.DOTALL 启用 dotall 模式。【重要】Pattern.LITERAL 启用模式的文字解析。Pattern.MULTILINE 启用多行模式。【重要】Pattern.UNICODE_CASE 启用 Unicode 感知大小写折叠。Pattern.UNICODE_CHARACTER_CLASS 启用Unicode版本预定义字符类和POSIX字符类.Pattern.UNIX_LINES 启用 Unix 行模式。例如 String phone 13100000000; // 获得模式对象匹配规则 Pattern pattern Pattern.compile(1[345789]\\d{9}); 2、创建匹配器 根据模式匹配规则生成匹配器。使用 Pattern对象的 matcher(CharSequence input) 方法创建匹配器 Matcher类用于在给定的Pattern实例的模式控制下进行字符串的匹配工作。 例如 String phone 13100000000; Pattern pattern Pattern.compile(1[345789]\\d{9}); // 匹配规则 Matcher matcher pattern.matcher(phone); // 匹配器3、匹配器的常用方法 匹配器Matcher的实例对象 ① matches匹配 abc.matches(\w{3}) boolean matches()字符串是否与正则表达式【完全】匹配例如 String phone 13100000000; Pattern pattern Pattern.compile(1[345789]\\d{9}); // 编译后的模式 Matcher matcher pattern.matcher(phone); System.out.println(matcher.matches());② lookingAt匹配 boolean lookingAt()字符串的【开始位置】是否有和正则表达式匹配的内容例如 ③ find匹配 boolean find()字符串中是否有【与位置无关】和正则表达式匹配的内容 boolean find(int start)字符串中【从start指定的地方开始】是否有【与位置无关】和正则表达式匹配的内容例如 ④ groupCount 匹配 int groupCount()返回匹配到的分组结果个数例如 ⑤ group 获得匹配结果注意 要先调用匹配方法后才能获得匹配结果否则报错 String group(); String group(0);//返回匹配到的【整体】结果 String group(int group);//根据【分组编号0表示完整结果组号从1开始】获取匹配到的结果例如 ⑥ replaceAll String replaceAll(String replacement)将正则表达式对应的【所有】【完整匹配】结果使用字符串替换并返回替换后的新字符串例如 ⑦ replaceFirst String replaceFirst(String replacement)将正则表达式对应的【第一个】【完整匹配】结果使用字符串替换并返回替换后的新字符串例如 ⑧ 其他方法见API手册 4、其它相关用法 ① 使用 pattern 匹配字符串 使用 Pattern.matches() 静态方法判断正则表达式与字符串【完全】匹配。 Static boolean matches(String regex, CharSequence input)例如 // 判断手机号格式是否正确 String phone 13100000000; System.out.println(Pattern.matches(1[345789]\\d{9}, phone));② 使用 pattern 拆分字符串 Pattern.compile([ -/]).split(张三 中国/重庆/巴南 2011-11-11);
http://www.hkea.cn/news/14392406/

相关文章:

  • 做网站项目团队口号太仓手机网站建设
  • 傻瓜式网站建设软件有哪些网页设计报价表
  • 黄金网站app视频域名 网址 网站名称
  • 营销型网站方案书数字营销工具
  • 只做女性的网站威海市网站建设
  • 辽宁网站建设电话百度企业网站建设
  • 建设互联网站的目的热门的网页设计工具有哪些
  • 上海网站推广找哪家成都展示型网站开发
  • 网站建设是前端的吗谁做的四虎网站是多少
  • 建站公司新闻资讯成都网络推广公司
  • 客户网站留言有用unity做网站的吗
  • 贵港有网站建设的公司吗北滘大良网站制作
  • wordpress 网站重置电商网站建设的步骤
  • 做首图的网站免费制作自己的网站
  • 网站开发,自定义首页显示响应式做的好的网站有哪些
  • 网络营销企业网站优化艺考有哪些专业
  • 保险公司网站策划西双版纳
  • 内蒙古城乡建设部网站首页wordpress页眉显示购物车
  • 佛山外贸网站建站win安装wordpress
  • 域名备案怎么关闭网站龙岩新闻龙岩kk网社区
  • 东莞网站建设基础谷歌seo怎么优化
  • 女和女做网站网站大全浏览器
  • 网站建设的总结与改进用什么程序做网站
  • 镇江网站建设多少钱做网站的步骤流程
  • 外贸网站推广机构在线建站哪个网站好
  • 机械类 网站源码邵阳属于哪个省哪个市
  • 网页制作与网站设计网站建设kaituozu
  • 云南火电建设公司网站制作网站的代码
  • 河北智慧团建官网登录入口wordpress标题优化
  • 建设网站的公司有哪些在线资源搜索引擎