JavaScript基础知识(正则表达式、字符串)
23、正则表达式
作用:定义一个特定的验证字符串内容规则的表达式
注:正则表达式并不是JavaScript独有的;JavaScript支持正则表达式
var a = { }; // 定义一个空对象 var b = [ ];// 定义一个空数组
var d = / /; // 定义一个空正则表达式 var c = ( ); 【错误】
i 定义正则表达式
定义一个空的正则表达式时 ---编辑器会报错; 空的正则表达式的值 ---undefined
- 字面量方式
var 正则表达式 = /表达式规则/修饰符
- 构造函数方式
var 正则表达式 = new RegExp(表达式规则,修饰符)
i 正则表达式对象的验证方法
先定义用于验证的字符串;再定义正则表达式的规则;后验证字符串是否符合正则表达式的规则
eg: /表达式规则/.test (所有内容的字符串)
结果:完全相同返回 true [注:必要是匹配和位置无关]
² 直接字符
[ ] 表示字符集合。只要其中任意一个匹配,则返回true 数字: [0-9] 字母: [a-zA-Z]
^ 表示反向集合 \d : [0-9] -> 匹配单个数字
? 表示匹配前面一个字符0次或者1次,和{0,1}有相同的效果。
+ 表示匹配前面一个字符1次或者多次,和{1,}有相同的效果。
* 表示匹配前一个字符0次或者是多次。
² 重复规则 –
{n,m} - 匹配前面的字符最少出现n次,最多出现m次;即n <= 次数 <= m
{n} - 匹配前面的字符出现 n 次
² 位置规则
^:表示字符的开始位置; $:表示字符的结束位置
eg: / [ ]{n,m} / ----【连续】出现【n到m次】
/ [数字和字母]{n,m} / ----只要字母和数字有其一即可
/ ^[数字和字母]{n,m} / ----以数字或字母【开头】,且连续出现n到m次
/ {n,m}$ / ---以数字或字母【结尾】,且连续出现n到m次
/ ^[ ]{n,m}$ / ----以数字或字母【结尾】【总共】个数是n到m
8 直接量字符
\t : 水平制表符 TAB键 \n 或 \r : 换行符或回车符 ENTER键
8 修饰符
i - 表示不区分大小写; g - 全局搜索; m - 多行搜索;
eg: var 名称 = /正则表达式/ i; var 名称 = new RegExp('[a-z]{3,5}', 'i' );
u 字符串使用正则表达式的方法
² 替换方法
replace(/被替换的内容/,被替换的内容 ) 被替换的内容---使用正则表达式
² 匹配内容—>数组
match(/需匹配的内容/)
返回值:是一个数组; 需匹配的内容---使用正则表达式
(注:若参数为字符串时,返回的数组只有一个元素)
² 查找内容—>位置
search(需查找的内容)
返回值:匹配内容的索引值 (注:如果没有任何内容匹配的话,返回 -1)
24、字符串
- 遍历字符串
方法:(类似数组) 使用for 或 for… in 结果:得到字符串中的每个字符
- 查找字符
² charAt(索引值)
注: 超出索引值范围时,则返回空字符
² charCodeAt(索引值)
注:返回值:指定索引值对应的字符的Unicode编码值 [a-97; z-122; 0-48; 9-59;]
- 检索字符串
indexOf(检索的字符串)
- 截取字符串
² slice(start, end)
start:开始截取的位置(被包含); end:结束截取的位置【不被包含】
正数:从左向右排列(从 0 开始) 负数:从右向左排列(从 -1开始)
² substr(位置,个数)
若不设置个数,则默认为截取到最后
² substring(start, end)
start:开始截取的位置(被包含) end:结束截取的位置【不被包含】
- Ø 分隔字符串
split( )
作用:将一个使用分隔符分隔的字符串转换为一个数组
参数:分隔符; 返回值:数组
总:原有基础上 不做处理,则空格也有分隔符;且所有元素组成一个数组
原有什么,再给什么,从而分隔符就是什么;且所有元素组成一个数组
JavaScript基础知识(正则表达式、字符串)的更多相关文章
- JavaScript基础知识-正则表达式
正则表达式 作用:定义一个特定的验证字符串内容规则的表达式 注:正则表达式并不是JavaScript独有的:JavaScript支持正则表达式 var a = { }; // 定义一个空对象 ...
- JavaScript基础知识(字符串的方法)
字符串的方法 1.字符串: 在js中被单引号或双引号包起来的内容都是字符串: var t = "true"; console.log(typeof t);// "stri ...
- JavaScript 基础知识 - BOM篇
前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...
- Javascript基础知识总结一
Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- JavaScript基础知识整理
只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...
- JavaScript基础知识笔记
做前端几年了,一直疏于整理归纳,所以这两天把基础看了一遍,加上使用经验,整理了基础知识中关键技术,旨在系统性的学习和备忘.如果发现错误,请留言提示,谢谢! 重要说明:本文只列举基础知识点,中级和高级内 ...
- (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...
- JavaScript基础知识(一)
一.JavaScript基础 1.JavaScript用法: HTML 中的脚本必须位于 <script> 与 </script> 标签之间. 脚本可被放置在 HTML 页面的 ...
随机推荐
- 安装Oracle之后在DOS命令下不能使用sqlplus命令启动Oracle?
就像完成安装JDK后需要给系统配置环境变量JAVA_HOME和PATH,以便让系统认识在JDK里面的Javac命令.同样的,安装Oracle也需要这么一个过程.在正常情况下安装Oracle时系统安装程 ...
- 教程:安装禅道zentao项目管理软件github上的开发版
该文章转自:吕滔博客 直接从github拉下来的禅道的源码,是跑不起来的.除非你按我的教程来做...哈哈哈(不要脸)~~~~ 禅道官网提供的版本包是带了有安装文件,并有打包合成一些css.js文件的. ...
- 成功解决react+webpack打包文件过大的问题
最近在学习并使用webpack+react+antd写了一个小项目,也可以说是demo,待全部开发完成后发现webpack的打包文件足足有将近13.3MB,快吓死宝宝了,经过连续几天的学习,和调试最后 ...
- ES6模板字符串
ES6支持模板字符串,简单写法如下 //html界面 <!DOCTYPE html> <html> <head> <meta charset="ut ...
- iOS cocos2d安装以及问题解决
一:下载: 首先要去Cocos2d和Cocos2d-x网站下载相关的工具: 1.Cocos2d下载地址:http://www.cocos2d-iphone.org,然后进入Download页面,下边有 ...
- Java 本地开发环境搭建(框架采用 Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6)
项目搭建采用技术栈为:Spring+Spring MVC+Hibernate+Jsp+Gradle+tomcat+mysql5.6 搭建环境文档目录结构说明: 使用Intellj Idea 搭建项目过 ...
- Docker(七):Docker容器卷管理
1.使用容器卷的原因:Docker容器产生的数据,如果不通过commit生成新的镜像,数据会在容器删除后丢失.为了能持久化保存和共享容器的数据,Docker提出了两种管理数据的方式:数据卷和数据卷容器 ...
- ES6 函数的扩展2
8.2 rest参数 ES6引入rest参数(形式为"-变量名"),用于获取函数的多余参数,这样就不需要使用arguments对象了. arguments对象并没有数组的方法,re ...
- Selinux安全机制
1.Selinux安全机制简介 Selinux是Google在Android 4.4上正式推出的一套以SELinux为基础于核心的系统安全机制.而SELinux则是由美国NSA(国安局)和一些公司(R ...
- qt中线程的使用方法
QT中使用线程可以提高工作效率. 要使用线程要经过一下四个步骤: (1)先创建一个c++ class文件,记得继承Thread,创建步骤如下: a.第一步 b.第二步 (2)自定义一个run函数,以后 ...