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. java类中获取ServletContext的方法

    起因是我想要获取一个相对路径,需要用到servletContext的getRealPath()方法,于是上网搜索,找到两种方法来获取ServletContext. 方法1:第一种方法是这样的: Ser ...

  2. Highway LSTM 学习笔记

    Highway LSTM 学习笔记 zoerywzhou@gmail.com http://www.cnblogs.com/swje/ 作者:Zhouwan  2016-4-5   声明 1)该Dee ...

  3. IntelliJ IDEA 环境常用设置整理

    1.修改为Eclipse快捷键 File -> Settings -> Keymap => Keymaps改为 Eclipse copy   2.显示行号: File -> S ...

  4. Redis命令与配置

    命令 开启服务端 redis-server.exe redis.conf 客户端连接 redis-cli.exe -h 127.0.0.1 -p 6379 1.连接操作相关的命令 quit:关闭连接( ...

  5. 【ANT】一个简单的ANT生成文件build.xml

    <?xml version="1.0" ?> <project default="test"> <target name=&quo ...

  6. 每周.NET前沿技术文章摘要(2017-05-17)

    汇总国外.NET社区相关文章,覆盖.NET ,ASP.NET等内容: .NET .NET Framework 4.7正式发布 链接: http://www.infoq.com/cn/news/2017 ...

  7. SpringMVC 返回json的两种方式

    前后台数据交互使用json是一种很重要的方式.本文主要探讨SpringMVC框架使用json传输的技术. 请注意,本文所提到的项目使用Spring 版本是4.1.7,其他版本在具体使用上可能有不一样的 ...

  8. 使用Libmicrohttpd搭建内嵌(本地)服务器

    Libmicrohttpd简介 GNU Libmicrohttpd是一个用来在项目中内嵌http服务器的C语言库,它具有以下几个非常鲜明的特点: C语言库,小而快. API非常简单,且都是可重入的. ...

  9. Java之线程安全中的三种同步方式

    一个程序在运行起来时,会转换为进程,通常含有多个线程. 通常情况下,一个进程中的比较耗时的操作(如长循环.文件上传下载.网络资源获取等),往往会采用多线程来解决. 比如,现实生活中,银行取钱问题.火车 ...

  10. tensorflow ckpt文件转caffemodel时遇到的坑

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 ...