正则表达式
‘ js’
/\t/ 匹配tab键
/\x0A/ ascii码匹配
\u4e00-\u9fa5; 汉字unicode编码匹配范围
[^js] 除去js之外匹配
/[a-z]/ 小写匹配
/[c-d]/ 顺序自定义
/[u4e00…
var pattern=/[a-zA-Z]/ 混合模式
pattern.exec(str);
/[a [^\n] … /./ 等效 除换行外匹配 /./ 单独匹配小数点加斜杠进行转义
/[a-zA-Z0-9_]/------------/\w/ 取反 /\W/ 大写
[0-9] /\d/
/\s/ 匹配空格和tab键制表符
[\s\d] 只能匹配一个值 取第一个相符合值 '1 ’ 取1 ‘ 1’ 取空格
/\d{1,2}/ 大于等于,小于等于2 /\d{1,}/ 表示至少1 不存在小于
/\d{3}/ 匹配三个
/\d?/ 0-1
/\d+/ 1,
/\d*/ 0,
/\d+.?\d*/ 动态匹配数字 以提取价格类数字
/a+?/ 将贪婪转为非贪婪
/html|css|js/ ; 选择
分组
/(ab)+/
/(ab) cd \1 / 选择第一个分组 RegExp. $1
<>无法匹配 直接打出 / 转义斜杠进行匹配
定位匹配
/^js/ 以…为开头 js为非开头则返回none /[^js]/ 除了js
/^\d+$/ 全数字匹配 取反不全是数字 /\D/
/js\b/ 边界匹配
/\bjs\b/
前瞻性匹配
var pattern=/java(?=scrpit)/; 是否由该后缀 输出前值
负向前瞻性
?!script
?:script match
/js/
new RegExp(‘js’); === /js/
var className=‘box’;
new RegExp(classname);
var pattern = /js/;
var pattern = new RegExp(‘js’);
/js/g; 全局有类似于sum的效果 累加溢出会执行清零重置
toString( ) ; 用字符串输出
toLocaleString( ) ;
valueof 返回正则表达式本身
pattern.source 输出属性
str.search 返回索引 找不到返回-1 indexof
不受全局修饰影响
str.match 类似exec
但使用全局不输出子选项且输出所有匹配项
/js / m g ; 配 合 g 和 /mg; 配合g 和 /mg;配合g和^使用
str.split
var p=/\s*,\s*/; \s消去空格
str.replace(pattern,’.’);
/1\d{4,10}KaTeX parse error: Expected group after '^' at position 20: … /^̲/ 通用起始框架
全是数字
首位不能为0
最少5位
最多
\S 不能用空白
function trim(str){
return str.replace(/^\s*/,’’).replace(/\s*$/,’’);
} //去首尾空白
转驼峰 toUpperCase( );
var pattern=/-([a-z])/gi; // i保证首字母必定被转为大写,防止跳过
匹配HTML标签
var pattern= /<[^>]+>/g ;
".* " 非换行都可以
1-9 ↩︎