欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

JS基础正则表达式示例的详细介绍

来源:本站整理 作者:佚名 时间:2017-01-11 TAG: 我要投稿

正则表达式的() [] {}有不同的意思。
() 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。
(\s*)表示连续空格的字符串。
[]是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。
{}一般用来表示匹配的长度,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格。
(0-9) 匹配 '0-9′ 本身。 [0-9]* 匹配数字(注意后面有 *,可以为空)[0-9]+ 匹配数字(注意后面有 +,不可以为空){1-9} 写法错误。
[0-9]{0,9} 表示长度为 0 到 9 的数字字符串。
// 清除两边的空格  JS中需要自己写正则,JQ中可直接调用$.trim(str)去除字符串前后空格
String.prototype.trim = function() {
 return this.replace(/(^\s*)|(\s*$)/g, '');
};
// 合并多个空白为一个空白
String.prototype.ResetBlank = function() {
 var regEx = /\s+/g;
 return this.replace(regEx, ' ');
};
// 保留数字
String.prototype.GetNum = function() {
 var regEx = /[^\d]/g;
 return this.replace(regEx, '');
};
// 保留中文
String.prototype.GetCN = function() {
 var regEx = /[^\u4e00-\u9fa5\uf900-\ufa2d]/g;
 return this.replace(regEx, '');
};
// String转化为Number
String.prototype.ToInt = function() {
 return isNaN(parseInt(this)) ? this.toString() : parseInt(this);
};
// 得到字节长度
String.prototype.GetLen = function() {
 var regEx = /^[\u4e00-\u9fa5\uf900-\ufa2d]+$/;
 if (regEx.test(this)) {
 return this.length * 2;
 } else {
 var oMatches = this.match(/[\x00-\xff]/g);
 var oLength = this.length * 2 - oMatches.length;
 return oLength;
 }
};
// 获取文件全名
String.prototype.GetFileName = function() {
 var regEx = /^.*\/([^\/\?]*).*$/;
 return this.replace(regEx, '$1');
};
// 获取文件扩展名
String.prototype.GetExtensionName = function() {
 var regEx = /^.*\/[^\/]*(\.[^\.\?]*).*$/;
 return this.replace(regEx, '$1');
};
//替换所有
String.prototype.replaceAll = function(reallyDo, replaceWith, ignoreCase) {
 if (!RegExp.prototype.isPrototypeOf(reallyDo)) {
 return this.replace(new RegExp(reallyDo, (ignoreCase ? "gi" : "g")), replaceWith);
 } else {
 return this.replace(reallyDo, replaceWith);
 }
};
//格式化字符串 add By 刘景宁 2010-12-09
String.Format = function() {
 if (arguments.length == 0) {
 return '';
 }
 if (arguments.length == 1) {
 return arguments[0];
 }
 var reg = /{(\d+)?}/g;
 var args = arguments;
 var result = arguments[0].replace(reg, function($0, $1) {
 return args[parseInt($1) + 1];
 });
 return result;
};
// 数字补零
Number.prototype.LenWithZero = function(oCount) {
 var strText = this.toString();
 while (strText.length  oCount) {
 strText = '0' + strText;
 }
 return strText;
};
// Unicode还原
Number.prototype.ChrW = function() {
 return String.fromCharCode(this);
};
// 数字数组由小到大排序
Array.prototype.Min2Max = function() {
 var oValue;
 for (var i = 0; i  this.length; i++) {
 for (var j = 0; j  i; j++) {
  if (this[i]  this[j]) {
  oValue = this[i];
  this[i] = this[j];
  this[j] = oValue;
  }
 }
 }
 return this;
};
// 数字数组由大到小排序
Array.prototype.Max2Min = function() {
 var oValue;
 for (var i = 0; i  this.length; i++) {
 for (var j = 0; j  i; j++) {
  if (this[i] > this[j]) {
  oValue = this[i];
  this[i] = this[j];
  this[j] = oValue;
  }
 }
 }
 return this;
};
// 获得数字数组中最大项
Array.prototype.GetMax = function() {
 var oValue = 0;
 for (var i = 0; i  this.length; i++) {
 if (this[i] > oValue) {
  oValue = this[i];
 }
 }
 return oValue;
};
// 获得数字数组中最小项
Array.prototype.GetMin = function() {
 var oValue = 0;
 for (var i = 0; i  this.length; i++) {
 if (this[i]  oValue) {
  oValue = this[i];
 }
 }
 return oValue;
};
// 获取当前时间的中文形式
Date.prototype.GetCNDate = function() {
 var oDateText = '';
 oDateText += this.getFullYear().LenWithZero(4) + new Number(24180).ChrW();
 oDateText += this.getMonth().LenWithZero(2) + new Number(26376).ChrW();
 oDateText += this.getDate().LenWithZero(2) + new Number(26085).ChrW();
 oDateText += this.getHours().LenWithZero(2) + new Number(26102).ChrW();

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载