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. String类为什么要用final修饰(面试回答)

    String是所有语言中最常用的一个类.我们知道在Java中,String是不可变的.final的.Java在运行时也保存了一个字符串池(String pool),这使得String成为了一个特别的类 ...

  2. 随聊——Python的前世今生

    1989年圣诞节前夕,山雨欲来风满楼,计算机程序设计语言界隐隐有大事要发生,果然不出所料.江湖人称龟叔(Guido von Rossum),就是这位祖籍荷兰的大能,在圣诞节百无聊赖的期间,发明了Pyt ...

  3. Sublime Text编辑器 + vim插件

    Sublime安装 Sublime Text 是一个代码编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim. Su ...

  4. Python学习日记:day9--------函数

    初识函数 1,自定义函数 s ='内容' #自定义函数 def my_len():#自定义函数没有参数 i =0 for k in s: i+=1 print(i) return i #返回值 my_ ...

  5. ArcGIS 网络分析[1.3] 在个人地理数据库中创建网络数据集/并简单试验最佳路径

    上篇使用shp文件创建网络数据集,然而在ArcGIS 9中就支持地理数据库了,数据库的管理更为科学强大. 本篇就使用个人地理数据库进行建立网络数据集,线数据仍然可以是1.1中的线数据,但是我做了一些修 ...

  6. Cat 客户端采用什么策略上报消息树

    策略分类 目前搞清楚两种 第一种(蓝色):默认服务器列表中选一个,算法核心是根据应用名的哈希值取模.也就是说同一个应用始终打到同一台服务器上,如果这台服务器挂了,另选一台服务器. 第二种(红色):应用 ...

  7. jquery $.fn $.fx是什么意思有什么用

    $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效, .fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn ...

  8. 如何高逼格读取Web.config中的AppSettings

    http://edi.wang/post/2015/4/22/how-to-read-webconfig-appsettings-with-bigiblity 先插句题外话,下版本的ASP.NET貌似 ...

  9. Flask快速入门,知识整理

    一.Flask介绍(轻量级的框架,非常快速的就能把程序搭建起来) Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是 ...

  10. 基于web的网上书城系统开发-----登录注册扩展-------验证码功能

    public class CheckCode extends HttpServlet { private static final long serialVersionUID = 1L; privat ...