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. 在Office Add-in中实现单点登陆(SSO)

    作者:陈希章 发表于 2017年12月27日 这篇文章经过多次修改,终于在今天晚上写完了,演示用的范例代码也终于跑通了.因为这个SSO的功能目前只是Preview的状态,所以本篇文章严格参考了官方的文 ...

  2. 《编程人生:15位软件先驱访谈录》【PDF】下载

    <编程人生:15位软件先驱访谈录>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382231 内容简介 本书适合所有程序员,也适合 ...

  3. 数据分析与展示——NumPy数据存取与函数

    NumPy库入门 NumPy数据存取和函数 数据的CSV文件存取 CSV文件 CSV(Comma-Separated Value,逗号分隔值)是一种常见的文件格式,用来存储批量数据. np.savet ...

  4. 八张图学通JavaScript 转自52

  5. 瞎j8封装第二版之数据层的封装

    看了以前写的代码,对就是下面这个 手把手封装数据层之DataUtil数据库操作的封装 觉得以前写的代码好烂啊!!!,重新理了一下思路,写得更规范和简练,应该效率也会高很多,用了一下下午写的连接池(半废 ...

  6. android中Log类的封装

    1.为了方便的使用Log打印日志,以及后续方便撤销日志打印,所以对Log类进行封装是一件好事. package market.phone; import android.util.Log; /** * ...

  7. 使用Python Shapefile Library创建和编辑Shapefile文件

    介绍 shapefile是GIS中非常重要的一种数据类型,在ArcGIS中被称为要素类(Feature Classes),主要包括点(point).线(polyline)和多边形(polygon).P ...

  8. Nginx 错误处理方法: bind() to 0.0.0.0:80 failed

    Nginx 错误处理方法: bind() to 0.0.0.0:80 failed 今天启动window上的nginx总是报错 错误信息是bind() to 0.0.0.0:80 failed (10 ...

  9. DEDECMS最新5.7版在Windows下的Memcache安装

    一,织梦后台后台设置进入系统后台,在[系统基本参数]下面的"性能选项"卡当中,关于memcache进行如下配置: cfg_memcache_enable : 是否启用memcach ...

  10. Lucene分词停用词库stopwords

    ! " $ % & ' ( ) * + , - -- . .. ... ...... ................... ./ .一 .数 .日 / // 0 1 2 3 4 5 ...