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基础知识(正则表达式、字符串)的更多相关文章

  1. JavaScript基础知识-正则表达式

    正则表达式 作用:定义一个特定的验证字符串内容规则的表达式 注:正则表达式并不是JavaScript独有的:JavaScript支持正则表达式 var a = { };  // 定义一个空对象     ...

  2. JavaScript基础知识(字符串的方法)

    字符串的方法 1.字符串: 在js中被单引号或双引号包起来的内容都是字符串: var t = "true"; console.log(typeof t);// "stri ...

  3. JavaScript 基础知识 - BOM篇

    前言 本篇文章是JavaScript基础知识的BOM篇,如果前面的<JavaScript基础知识-DOM篇>看完了,现在就可以学习BOM了. 注意: 所有的案例都在这里链接: 提取密码密码 ...

  4. Javascript基础知识总结一

    Javascript基础知识总结一 <!DOCTYPE html> <html> <head lang="en"> <meta chars ...

  5. 学习javascript基础知识系列第二节 - this用法

    通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...

  6. 学习javascript基础知识系列第三节 - ()()用法

    总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...

  7. JavaScript基础知识整理

    只整理基础知识中关键技术,旨在系统性的学习和备忘. 1.在 JScript 中 null 和 undefined 的主要区别是 null 的操作象数字 0,而 undefined 的操作象特殊值NaN ...

  8. JavaScript基础知识笔记

    做前端几年了,一直疏于整理归纳,所以这两天把基础看了一遍,加上使用经验,整理了基础知识中关键技术,旨在系统性的学习和备忘.如果发现错误,请留言提示,谢谢! 重要说明:本文只列举基础知识点,中级和高级内 ...

  9. (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识

    开篇:JAVASCRIPT是AJAX技术中不可或缺的一部分,所以想学好AJAX以及现在流行的AJAX框架,学好JAVASCRIPT是最重要的.这章我给大家整理了一些JAVASCRIPT的基础知识.常用 ...

  10. JavaScript基础知识(一)

    一.JavaScript基础 1.JavaScript用法: HTML 中的脚本必须位于 <script> 与 </script> 标签之间. 脚本可被放置在 HTML 页面的 ...

随机推荐

  1. web前端学习就这9个阶段,你属于哪个阶段?

    第一阶段:HTML+CSS: HTML进阶.CSS进阶.div+css布局.HTML+css整站开发. JavaScript基础:Js基础教程.js内置对象常用方法.常见DOM树操作大全.ECMAsc ...

  2. [.Net跨平台]部署DTCMS到Jexus遇到的问题及解决思路---部署

    上一篇我们环境已经准备完成,此时可以部署了,我们就以dtcms作为例子,http://bbs.dtcms.net/forum.php?mod=viewthread&tid=2420&e ...

  3. JavaScript的setter与getter方法

    作者:http://hawkzz.com 以前在写项目过程一直都没有使用过Javascript的setter与getter方法,所以对其是一种要懂不懂的概念:今天看书看到这个知识点,还是模模糊糊的,于 ...

  4. C#中MessageBox用法大全(附效果图)

    1.最简单的,只显示提示信息 2. 可以给消息框加上标题. 3. "确定"和"取消" 4. 给MessageBox加上一个Icon,.net提供常见的Icon共 ...

  5. js代码细嚼慢咽

    全局变量的梗 例1: 对于var 的理解:将该变量声明在当前的作用域中,或者说执行上下文中. function add() { result = 3; //result变量即是隐喻全局变量 } add ...

  6. Spring_Spring与IoC_Bean的装配

    一.Bean的装配      bean的装配,即Bean对象的创建,容器根据代码要求来创建Bean对象后再传递给代码的过程,称为Bean的装配.  二.默认装配方式 代码通过getBean()方式从容 ...

  7. ElasticSearch 学习记录之父子结构的查询

    父子结构 父亲type属性查询子type 的类型 父子结构的查询,可以通过父亲类型的字段,查询出子类型的索引信息 POST /product/_search { "query": ...

  8. Docker 安装入门 --基础镜像

    安装Docker1.Docker命令安装 yum install docker //安装docker包 service docker start //设置服务启动  chkconfig docker ...

  9. 5 秒创建 k8s 集群 - 每天5分钟玩转 Docker 容器技术(115)

    据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...

  10. 2018年第一篇行动笔记:Reading Log

    今天读了盖兆泉的文章<美国教师怎么上阅读课>,觉得干货颇多,不仅仅针对儿童英语阅读,而且对生活的方方面面都有助益. 该文章主要内容摘要如下: 学生需要大量时间阅读 这里的阅读时间是特指花在 ...