JavaScript 正则表达式的应用实例

时间:2024-05-24 18:07:02

都是自己实例记录,不断更新中。。。。

1、字符串找出所有匹配的邮箱并替换

<html>
<body>
<script type="text/javascript">
var str='sdjj <p>31@qq.com</p> sassl <span>kskj@163.com</span> bbAaa@dd.com abb@dd.com';
var result=str.match(/[a-zA-Z0-9._%+-]+@(?!.*\.\..*)[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/gi);
console.log(result); result=str.replace(/[\S]+@(?!.*\.\..*)[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}/gi,"<a href='http://www.baidu.com'>百度搜索</a>");
console.log(result);
document.write(result)
</script>
</body>
</html>

2、匹配空格

str=str.replace(/^\s+|\s+$/g,"");  //去左右空格
str=str.replace(/^\s*/, ""); //去左空格
str=str.replace(/\s*$/, ""); //去右空格
str=str.replace(/\s+/g, ""); //去所有空格

3、匹配所有英文标点

var str='jfkldsjalk,.23@#!$$k~!  @#$%^&*()(_+-=|\{}[]\';:,./<>??gg  g~```gf;0,0。0“0”0"0"0';
str=str.replace(/[\ |\~|\`|\!|\@|\#|\$|\%|\^|\&|\*|\(|\)|\-|\_|\+|\=|\||\\|\[|\]|\{|\}|\;|\:|\"|\'|\,|\<|\.|\>|\/|\?]/g,"");
console.log(str);

4、匹配所有中文标点

var str='jfkldsjalk,.23@#!$$k~!  @#$%^&*()(_+-=|\{}[]\';:,./<>??gg  g~```gf;0,0。0“0”0"0"0';
str=str.replace(/·|\!|¥|…|(|)|—|【|】|、|;|:|“|”|‘|’|,|。|《|》|?|、|→|←/g,"");
console.log(str);

5、C# 正则表达式匹配所有键盘标点(中英文、空白字符)

 private string GuoLvString(string str)
{
   //备注:英文减号-在中间的话需要加\-,在末尾的话则不需要,个人思考可能是在中间会被解释为像[a-z]这样的意义;
string guolvStr = @"test|签到|[0-9\s]|[·!¥…()—【】、;:“”‘’,。《》?→←]|[~`!@#\$%\^&\*\(\)\-_\+=\|\\\[\]\{\};:""\',<\.>\/\?]";
Regex myRegex = new Regex(guolvStr, RegexOptions.IgnoreCase);
return myRegex.Replace(str, "");
}

6、javascript 日期正则表达式

貌似必须格式为 YYYY-MM-dd
/^(?:(?!)[-]{}-(?:(?:[-]|[-])-(?:[-]|[-]|[-])|(?:[-]|[-])-(?:|)|(?:[]|[])-)|(?:[-]{}(?:[]|[][]|[][])|(?:[]|[][]|[][]))--)$/

匹配字符

字符 等同于 描述
. [^\n\r] 除了换行和回车之外的任意字符
\d [0-9] 数字字符
\D [^0-9] 非数字字符
\s [ \t\n\x0B\f\r] 空白字符
\S [^ \t\n\x0B\f\r] 非空白字符
\w [a-zA-Z_0-9] 单词字符(所有的字母)
\W [^a-zA-Z_0-9] 非单词字符

匹配特殊预定义字符

字符 正则 描述
\t /\t/ 制表符
\n /\n/ 制表符
\r /\r/ 回车符
\f /\f/ 换页符
\a /\a/ alert字符
\e /\e/ escape字符
\cX /\cX/ 与X相对应的控制字符
\b /\b/ 与回退字符
\v /\v/ 垂直制表符
\0 /\0/ 空字符