1、 检索关键词:

①检索固定关键词的位置:

var i=str.indexOf(“关键词”,fromi);在str中查找fromi位置后,下一个关键词的下标位置;省略fromi,从0开始;

var i=str.lastIndexOf(“关键词”,fromi);在str中查找fromi位置前,上一个关键词的下标位置;省略fromi从末尾开始;

②判断是否包含符合规则的关键词:

var i=str.search(/正则表达式/);找到返回下标,未找到返回-1;

2、正则表达式:

最简单的正则表达式就是关键词原文;

字符集:【字符列表】①一位字母:【A-Za-z】;②一位数字:【0-9】或者\d;③一位汉字:【\u4e00-\u9fa5】;④除了XX:【^XX】;⑤一位数字,字母,下划线:\w ó【0-9A-Za-z_】;⑥一位空字符,空格,换行,Tab:\s;⑦一位任意字符:.;

3、正则量词:

①{m,n}:至少m个,最多n个;②{m,}:m个以上;③{m}:必须m个;④?:0或1个;⑤*:0个或以上不限;⑥+:1个或以上不限;

4、正则选择,分组:

①选择:规则1|规则2;②分组:(规则1)|(规则2);

5、正则表达式示例:

手机号:(\+86|0086)?\s*1【34578】\d{9};

密码强度:①至少包含一位大写字母:(?!【a-z0-9】+$);②至少包含一位数字:(?!【A-Za-z】+$);③6~8位字母数字组合:【0-9A-Za-z】{6,8};

6、正则位置匹配:

①^:匹配字符串开头;②$:匹配字符串结尾;③\b:匹配单词边界;

7、检索操作关键词:

①查找一个固定关键词的位置:

var i=str.indexOf(“关键词”,fromi);

var i=str.lastIndexOf(“关键词”,fromi);

②判断是否包含符合规则的关键词:

var i=str.search(/reg/);

③返回所有关键词内容:

var kwords=str.match(/reg/i);

* i为忽略大小写;g为全部查找;

④替换:str=str.replace(/reg/ig,“替换值”);不直接修改,返回新字符串;

⑤切割:var subs=str.split(/reg/);按reg匹配切割为多个子字符串存在subs中;

⑥获得指定位置字符:

str.charAt(i);óstr【i】;

var code=str.charCodeAt(i);ó获得i位置字符的Unicode号;

var char=String.fromCharCode(code);ó将Unicode号转为字符;

⑦截取子字符串:

str.slice(starti,endi+1);

str.substring(starti,endi+1);不支持负数参数;

str.substr(starti,n);从starti开始截取n个字符;

javascript_core_05之正则表达式的更多相关文章

  1. JS正则表达式常用总结

    正则表达式的创建 JS正则表达式的创建有两种方式: new RegExp() 和 直接字面量. //使用RegExp对象创建 var regObj = new RegExp("(^\\s+) ...

  2. Python高手之路【五】python基础之正则表达式

    下图列出了Python支持的正则表达式元字符和语法: 字符点:匹配任意一个字符 import re st = 'python' result = re.findall('p.t',st) print( ...

  3. C# 正则表达式大全

    文章导读 正则表达式的本质是使用一系列特殊字符模式,来表示某一类字符串.正则表达式无疑是处理文本最有力的工具,而.NET提供的Regex类实现了验证正则表达式的方法.Regex 类表示不可变(只读)的 ...

  4. C#基础篇 - 正则表达式入门

    1.基本概念 正则表达式(Regular Expression)就是用事先定义好的一些特定字符(元字符)或普通字符.及这些字符的组合,组成一个“规则字符串”,这个“规则字符串”用来判断我们给定的字符串 ...

  5. JavaScript正则表达式,你真的知道?

    一.前言 粗浅的编写正则表达式,是造成性能瓶颈的主要原因.如下: var reg1 = /(A+A+)+B/; var reg2 = /AA+B/; 上述两个正则表达式,匹配效果是一样的,但是,效率就 ...

  6. Python 正则表达式入门(中级篇)

    Python 正则表达式入门(中级篇) 初级篇链接:http://www.cnblogs.com/chuxiuhong/p/5885073.html 上一篇我们说在这一篇里,我们会介绍子表达式,向前向 ...

  7. 【JS基础】正则表达式

    正则表达式的() [] {}有不同的意思. () 是为了提取匹配的字符串.表达式中有几个()就有几个相应的匹配字符串. (\s*)表示连续空格的字符串. []是定义匹配的字符范围.比如 [a-zA-Z ...

  8. JavaScript 正则表达式语法

    定义 JavaScript定义正则表达式有两种方法. 1.RegExp构造函数 var pattern = new RegExp("[bc]at","i"); ...

  9. [jquery]jquery正则表达式验证(手机号、身份证号、中文名称)

    数字判断方法:isNaN()函数 test()方法 判断字符串中是否匹配到正则表达式内容,返回的是boolean值 ( true / false ) // 验证中文名称 function isChin ...

随机推荐

  1. Debian 8下vsftpd安装与配置

    Debian 8下vsftpd安装与配置 0.环境 root@remote:/# uname -r 3.16.0-4-amd64 root@remote:/e# lsb_release No LSB ...

  2. POJ 2151 Check the difficulty of problems (概率DP)

    题意:ACM比赛中,共M道题,T个队,pij表示第i队解出第j题的概率 ,求每队至少解出一题且冠军队至少解出N道题的概率. 析:概率DP,dp[i][j][k] 表示第 i 个队伍,前 j 个题,解出 ...

  3. Mini projects #5 ---- Memory

    课程全名:An Introduction to Interactive Programming in Python,来自 Rice University 授课教授:Joe Warren, Scott ...

  4. hdu 5105 求函数极值 函数求导/三分法

    http://acm.hdu.edu.cn/showproblem.php?pid=5105 给定a,b,c,d,l,r,表示有一个函数f(x)=|a∗x3+b∗x2+c∗x+d|(L≤x≤R),求函 ...

  5. springMVC注解启用及优化

    使用注解的原因 最方便的还是启用注解 注解方便,而且项目中很流行. 配置文件尽量减少,主要使用注解方式. Springmvc的注解是在2.5版本后有了注解,如何开启注解配置文件 Web.xml文件中不 ...

  6. 记AbpSession扩展实现过程

    AbpSession只给了userId和TenantId,这次实际项目中并不够用,网上找了很久也没找到好的实现方法.项目初期没有时间进行研究,最近空了试了一下,大致实现添加额外字段并读取相应值的功能. ...

  7. Redis中Value使用hash类型的效率是普通String的两倍

    什么Redis? 点击这里 最近要开发的一个项目是分布式缓存组件,解决参数缓存高效获取的问题.参数达到了500万级别,刚刚开始了解Redis.做设计的时候考虑到Value使用哪种类型的问题? 主要面临 ...

  8. 【Win10 UWP】后台任务与动态磁贴

    动态磁贴(Live Tile)是WP系统的大亮点之一,一直以来受到广大用户的喜爱.这一讲主要研究如何在UWP应用里通过后台任务添加和使用动态磁贴功能. 从WP7到Win8,再到Win10 UWP,磁贴 ...

  9. 使用Ivy管理项目中的依赖

    Ivy是什么 Ivy是一个跟踪管理项目直接以来关系的工具.Ivy具有良好的灵活性和可配置性,使其可以适应各种不同的依赖管理和构建过程要求:虽然Ivy作为依赖管理工具,其可以与Apache Ant进行紧 ...

  10. NoSQL:从关系型数据库到非关系型数据库

    关系型数据库 所谓关系型数据库,,就是指采用了关系模型来组织数据的数据库. 什么是关系模型,简单说,关系模型就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织. 关系模 ...