最常用的~正则表达式-相关js函数知识简洁分享【新手推荐】
一、正则表达式的创建
JS正则的创建有两种方式: new RegExp() 和 直接字面量。
|
|
//使用RegExp对象创建
varregObj
=newRegExp("(^\s+)|(\s+$)","g"); //使用直接字面量创建
varregStr =
/(^\s+)|(\s+$)/g; |
二、()、[]、{} 的区别
() 提取匹配的字符串。表达式中有几个()就会得到几个相应的匹配字符串。比如 (\s+) 表示连续空格的字符串。
[] 匹配字符范围。比如 [a-zA-Z0-9] 匹配英文字符和数字。
{}匹配长度,比如: \s{3} 表示 匹配三个空格,\s{1,3}表示匹配1~3个空格。
三、^ 和 $
^ 匹配一个字符串的开头,比如 (^a) 就是匹配以字母a开头的字符串
$ 匹配一个字符串的结尾,比如 (b$) 就是匹配以字母b结尾的字符串
^ 还有另个一个作用就是取反,比如:[^xyz] 表示匹配的字符串不包含xyz
需要注意的是 :如果^出现在[]中一般表示取反,而出现在其他地方则是匹配字符串的开头
四、\d \s \w .
\d 匹配一个非负整数, 等价于 [0-9]
\s 匹配一个空白字符
\S 非空白字符
[\s\S] 任意字符
\w 匹配一个英文字母或数字,等价于[0-9a-zA-Z]
. 匹配除换行符以外的任意字符,等价于[^\n]
五、* + ?
* 表示匹配前面元素0次或多次,比如 (\s*) 就是匹配0个或多个空格
+ 表示匹配前面元素1次或多次,比如 (\d+) 就是匹配由至少1个整数组成的字符串
\2表示重复正则第二个圆括号内匹配到的内容
比如有以下正则:
([a-z])([a-z])\2\1 //先[a-z]两次,匹配字母如a、b ,然后\2和\1分别代表b和a再重复一次,即最终匹配为abba类型的字符组合
七、replace
replace 本身是JavaScript字符串对象的一个方法,它允许接收两个参数:
例:
实现字符串的trim函数,去除字符串两边的空格
|
1
2
3
4
5
6
7
8
9
10
|
String.prototype.trim =function(){
//方式一:将匹配到的每一个结果都用""替换
returnthis.replace(/(^\s+)|(\s+$)/g,function(){
return"";
});
//方式二:和方式一的原理相同
returnthis.replace(/(^\s+)|(\s+$)/g,'');
};
|
最常用的~正则表达式-相关js函数知识简洁分享【新手推荐】的更多相关文章
- 使用正则表达式匹配JS函数代码
使用正则表达式匹配JS函数代码 String someFunction="init"; Pattern regex = Pattern.compile("function ...
- 当页面提交时,执行相关JS函数检查输入是否合法
当页面提交时,执行相关JS函数检查输入是否合法 关键代码 <form action="tj.php" method="post" onSubmit=&qu ...
- js函数知识
1.函数基本知识 通过函数可以封装任意条语句,在任何地方调用,js中用function关键字来声明, //基本格式,函数名,传递参数,代码块 function functionName(arg0,ar ...
- PHP常用的数组相关处理函数
[数组中常用的多种遍历方式] [for 和 foreach 略] [while() . list() .each() 组合循环遍历数组] each()函数 a. 需要一个数组作为参数 b. 返回来的也 ...
- PHP基础-常用的数组相关处理函数
一 数组键/值操作有关的函数 1. array_values()//获取数组中所有的值 $lamp=array("os"=>"linux", " ...
- matlab 常用集合相关的函数
Matlab常用的集合相关的函数如下: union(A,B) %求集合A和集合B的并集 intersect(A,B) %求集合A和集合 ...
- js,JavaScript,a标签onclick传递参数不对,A标签调用js函数写法总结
错误示例: <a href="javascript:waterLineEdit(${goods.goods_id})" >修改 </a> <!-- 浏 ...
- a标签中执行js函数
在a标签中调用js函数最适当的方法推荐使用: 1.a href="javascript:void(0);" onclick="js_method()" 这种方法 ...
- js基础(常用语法、类型、函数)
js函数集 ·字符串(String) 1.声明 var myString = new String("Every good boy does fine."); var myS ...
随机推荐
- parse XML & js
parse XML & js how to parse xml data in js? https://stackoverflow.com/questions/17604071/parse-x ...
- 2018/3/4 Activiti教程之对于流程的基本操作以及从发起到完成还有相关注意事项(与Springboot整合版)三
写教程实在太累了,,,还浪费时间,Activiti教程就写到这好了,不过最近在玩区块链,到时候写几个区块链方面的教程. 这是一些流程的查询与删除api,删除这块,默认是级联删除(加个false参数,就 ...
- 【BZOJ4591】超能粒子炮·改(Lucas定理,组合计数)
题意: 曾经发明了脑洞治疗仪&超能粒子炮的发明家SHTSC又公开了他的新发明:超能粒子炮·改--一种可以发射威力更加 强大的粒子流的神秘装置.超能粒子炮·改相比超能粒子炮,在威力上有了本质的提 ...
- Linux下汇编语言学习笔记63 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- python基础之-字符串
字符模块:strstr.strip():去掉字符串前后空格str.lstrip():去掉字符串左侧空格str.rstrip():去掉字符串右侧空格str.encode():将字符串编码为二进制str. ...
- Git回退---reset和revert
今天学习了git回退的两个命令,现在总结一下: 1.git reset 如果想回退错误的提交C和D,只要把指针移到B上 git reset --hard a0fvf8 而这时候,远程仓库的指针还在D上 ...
- Django学习系列之django restframework
曾几何时,Ajax已经统治了Web开发中的客户端,而REST成为web世界中最流行的架构风格(architecture style).所以我们的选择变得很简单:前端ajax访问后端的RESTful A ...
- POJ 3342 Party at Hali-Bula (树形dp 树的最大独立集 判多解 好题)
Party at Hali-Bula Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 5660 Accepted: 202 ...
- ios Enum Value To NSString
#define enumToString(value) @#value eg. typedef NS_ENUM(NSInteger, Sex) { Male = 0, Famale = 1, }; ...
- Python extensions for Windows
Python extensions for Windows pywin32 214 Python extensions for Windows Maintainer: Mark Hammond Hom ...