资讯专栏INFORMATION COLUMN

javascript - RegExp类型 - String类型

liaorio / 2828人阅读

摘要:类型概述正则表达式是什么正则表达式由一些普通字符和特殊字符组成的,用以描述一种特定的字符规则的表达式。正则表达式常用在一段文本中搜索匹配或者替换特定形式的文本。

RegExp类型 概述 正则表达式是什么

正则表达式(Regular Expression):由一些普通字符和特殊字符组成的,用以描述一种特定的字符规则的表达式。
正则表达式常用在一段文本中搜索、匹配、或者替换特定形式的文本。

创建正则表达式
/*     var 变量名 = /pattern/attributes
*        pattern - 模式,定义正则表达式的内容
*        attributes - 修饰符,定义正则表达式的行为*/

var reg = /0123456789/i;

//构造函数方式
var reg = new RegExp(/pattern/attributes);
符号 字符类
var str = "12345abc";//要验证的内容

//下面三个正则表达式它们的意义相同
var reg = /[0-9]/;//要验证的内容匹配正则表达式的任意内容即可
var reg = /[/d]/;
var reg = /[0123456789]/;

console.log(reg.test(str));//true
重复
var str = "12345678";

/*      {n,m}
*        n - 表示最少出现的次数
*        m - 表示最多出现的次数
*      注意:出现的次数必须是连续的*/

var reg = /[0-9]{2,5}/;
console.log(reg.test(str));//true

var str1 = "1abc2";
console.log(reg.test(str1));//false
匹配指定位置
var str = "123a456";

// ^ - 表示以什么开始
var reg = /^[0-9]{3,5}/;

// $ - 表示以什么结束
var reg = /[0-9]{3,5}$/;

//表示匹配内容的长度最少n次,最多m次,且匹配内容必须与字符类匹配
var reg = /^[0-9]{3,5}$/;
console.log(reg.test(str));//false
修饰符

i - 不区分大小写匹配

g - 全局匹配

m - 多行匹配

var str = "maowuyu";

//修饰符 i 表示不区分大小写
var reg = /[A-Z]{3,6}/i;
console.log(reg.test(str));//true
exec()方法
var str = "maowuyu , shangwuyu , 123";

var reg = /[a-z]{3,5}/;

/*   exec()方法
*      返回值-数组
*        *第一个元素-匹配的内容
*        *第二个元素-匹配内容的位置
*        *第三个元素-完整内容
*      不匹配时,返回的结果为null*/
console.log(reg.exec(str));//[ "maowu", index: 0, input: "maowuyu , shangwuyu , 123" ]
String类型 常见操作 大小写转换
var reg1 = "maowuyu";

var reg = new String("shangwuyu");

//toUpperCase()方法 - 转换为大写
console.log(reg1.toUpperCase());//MAOWUYU
//toLowerCase()方法 - 转换为小写
console.log(reg1.toLowerCase());//maowuyu
获取指定位置的字符串
var str = "maowuyu";
//获取字符串长度
console.log(str.length);//7

/*    charAt - 根据指定位置获取相应的字符串
*     charCodeAt - 根据指定位置获取相应的字符串的Unicode码*/
console.log(str.charAt(4));//u
console.log(str.charCodeAt(4));//117 - Unicode码
检索字符串
var str = "maowuyu";
//indexOf()  -  根据指定内容返回位置 - 从左向右
console.log(str.indexOf("w"));//3
//lastindexOf()  - 根据指定内容返回位置 - 从右向左
console.log(str.lastIndexOf("u"))//6
截取字符串
var str = "maowuyu";

/*   slice()方法 -  截取指定开始和结束位置的字符串
*      参数
*       start - 表示开始截取的位置
*       end - 表示结束结束截取的位置的下一个位置*/
console.log(str.slice(2,5));//owu
console.log(str.slice(-5,-1));//owuy

/*    substring()方法 - 截取指定开始和结束位置的字符串
*       参数 - 只能为大于等于0的值
*        start - 开始截取的位置
*        end - 结束截取的位置的下一个位置
*       */
console.log(str.substring(2,5));//owu

/*     substr()方法 - 截取指定开始位置和长度的字符串
*       参数
*         start - 开始截取的位置
*         length - 截取的长度*/
console.log(str.substr(2,4));//console.log(str.slice(2,5));//owu
console.log(str.slice(-5,-1));//owuy
分隔字符串
var str = "maowuyu";
//split() - 把字符串分隔为字符串数组
console.log(str.split(""));//[ "m", "a", "o", "w", "u", "y", "u" ]

console.log(str.split(","));//[ "maowuyu" ]
连接字符串
var str1 = "abc";
var str2 = str1.concat("123","df");
console.log(str2);//abc123df
模式匹配 替换子字符串
var str ="Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft";

/*    replace()方法
*       作用 - 匹配字符串中的指定内容,并将之替换为新的指定内容
*       参数
*        *reg - 定义正则表达式(搜索指定内容)- 被替换的内容
*        str - 表示替换的内容
*       返回值 - 返回替换后的新字符串
*       */
//; i - 不区分大小写匹配;  g - 全局匹配
console.log(str.replace(/microsoft/ig,"hua"));
//hua is a big Company, hua’s color is red and has hua logo like hua
匹配字符串

match()方法 - 查找匹配正则的值

var str = "hua is a big Company, hua’s color is red and has hua logo like hua";

/*     match() - 匹配字符串
*       返回值 - 数组
*         *第一个元素 - 匹配的内容
*         *第二个元素 - 匹配内容第一个字符的位置
*         *第三个元素 - 完整的字符串内容
 *      当匹配的内容数量大于一个,->返回所有匹配内容*/
console.log(str.match(/hua/));

console.log(str.match(/hua/g));//[ "hua", "hua", "hua", "hua" ]
查找字符串

search()方法用于查找与正则匹配的值

var str = ""Microsoft is a big Company, microsoft’s color is red and has MICROSOFT logo like microsoft";
/*
    search(reg)方法
    * 作用 - 查找指定字符串中的指定内容
    * 参数
      * reg - 表示正则表达式
    * 返回值
      * 如果只匹配一个指定内容的话,返回匹配内容第一个字符的索引值
      * 如果匹配是多个指定内容的话,返回第一个匹配内容的第一个字符的索引值
 */
var result = str.search(/microsoft/ig);
console.log(result);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/108442.html

相关文章

  • RegExp类型String类型简介

    摘要:被称之为修饰符,用于表明正则表达式的行为。创建对象如下代码类型于类型之间的区别使用运算符,类型返回,类型返回。提取字符串中的两个指定的索引号之间的字符。在字符串中查找匹配的子串,并替换于正则表达式匹配的字串。 RegExp类型 概述 正则表达式时什么 正则表达式(Regular Expression):由一些普通字符和特殊字符组成的,用以描述一种特定的字符规则的表达式。正则表达式常用于...

    fancyLuo 评论0 收藏0
  • javascript判断数据类型

    摘要:操作符刚说完,肯定又有人想用,但是,真的有用吗操作符用来比较两个操作数的构造函数,运算符与运算符相似,用于识别正在处理的对象的类型。 题目 实现一个函数typeof(),输入一个数据,返回数据的基本类型。如: typeof([]) => array typeof({}) => object typeof() => string 等等 解析 由于javascript这门语言辉(keng)...

    Lyux 评论0 收藏0
  • javascript 数据类型判断 (常见库的数据类型判断源码的分析)

    摘要:对象类型常见的有,,,正则新增自己提供的乐行判断如果不对对象做严格区分使用。的实现使用了原型继承的表示左表达式,表示右表达式,它是用是否等于来判断对象的类型的。常见框架和库的实数据类型判断测试这里将的实现原理抽取出来,用原生实现。 JavaScript一共有六种数据类型,分为原始类型(又名基本类型)和对象类型(又名引用类型) 原始类型有五种,分别为number,string,boole...

    libin19890520 评论0 收藏0
  • 细说 Javascript 类型篇(二) : typeof 操作符

    摘要:操作符还有可能是设计中最大缺陷,因为它几乎是完全破损的。由于用法与调用函数的语法相似,因此常被误以为是函数调用,实际上并不存在名为的函数,只是一个操作符而已。而列则表示对象内部的属性。属性文档中明确地给出了获得属性的途径,就是使用。 typeof 操作符(还有 instanceof)可能是 Javascript 设计中最大缺陷,因为它几乎是完全破损的。由于 typeof 用法与调用函数...

    PAMPANG 评论0 收藏0
  • JS中如何准确判断数据类型

    摘要:对于此处的类型都是实例后的对象,并不会深入识别他们的构造函数这里不是数据类型。通过上面的判断,我们知道它并不能满足一些内置构造函数创建的伪类型。 在我的第一篇文章里,介绍过JS各大类型并使用typeof进行输出查看.也有提到过每个函数都有一个自己的内部属性[[class]],这个class指的是js内部分类.这个类的大致包括:数据类型和构造函数这两种。 JavaScript类型介绍 ...

    KitorinZero 评论0 收藏0
  • JavaScript的数据类型及其检测

    摘要:值的比较只进行值的比较会进行数据类型的转换。只要在当前实例的原型链上,我们用其检测出来的结果都是。但检测与不一样,还可以处理基本数据类型的检测。 showImg(https://segmentfault.com/img/remote/1460000016733921); 一、JavaScript有几种类型的值? Javascript有两种数据类型,分别是基本数据类型和引用数据类型。其中...

    starsfun 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<