RegExp:spa
在js中没有replaceAll ,所以须要替换所有须要用正则来替换。regexp
/gi ,g表示全局global,i表示忽略大小写 ignore对象
数字检验:ci
var regexp=/^\d+$/;字符串
regexp.test(str)get
多个内容匹配:io
var name = name.search(/中国|日本/i);table
在使用正则时,若是遇到特殊含义字符须要转义\。function
若是在new RegExp中须要对含义内容转义,好比:class
name.search(/\w+/i) 查找{
使用RegExp new RegExp("\\w+") , new RegExp("日本\|中国")
替换:
日期格式化替换 $1 $2为保留的项 匹配时须要用()包起来:
fmtDate = function(_datestr, _pattern){
var date = new Date(_datestr);
var year = date.getYear() + 1900;
var month = date.getMonth() + 1 > 12 ? 1 : date.getMonth() + 1;
var day = date.getDate();
_pattern = _partten.replace(/y{1,4}(-)m{1,2}(-)d{1,2}/gi, year + "$1" + month + "$2" + day);
return _pattern;
}
正则替换:
如下是给匹配的内容添加下划线
var exp = new RegExp(searchTxt,'g');
var result = targetTxt.replace(exp,"<u>" + searchTxt + "</u>");
有含义的特殊字符:
特别字符 |
说明 |
$ |
匹配输入字符串的结尾位置。若是设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 ‘\n' 或 ‘\r'。要匹配 $ 字符自己,请使用 \$。 |
( ) |
标记一个子表达式的开始和结束位置。子表达式能够获取供之后使用。要匹配这些字符,请使用 \( 和 \)。 |
* |
匹配前面的子表达式零次或屡次。要匹配 * 字符,请使用 \*。 |
+ |
匹配前面的子表达式一次或屡次。要匹配 + 字符,请使用 \+。 |
. |
匹配除换行符 \n以外的任何单字符。要匹配 .,请使用 \。 |
[ ] |
标记一个中括号表达式的开始。要匹配 [,请使用 \[。 |
? |
匹配前面的子表达式零次或一次,或指明一个非贪婪限定符。要匹配 ? 字符,请使用 \?。 |
\ |
将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符。例如, ‘n' 匹配字符‘n'。'\n' 匹配换行符。序列 ‘\\' 匹配 “\”,而 ‘\(' 则匹配 “(”。 |
^ |
匹配输入字符串的开始位置,除非在方括号表达式中使用,此时它表示不接受该字符集合。要匹配 ^ 字符自己,请使用 \^。 |
{ } |
标记限定符表达式的开始。要匹配 {,请使用 \{。 |
| |
指明两项之间的一个选择。要匹配 |,请使用 \|。 |