扩展String功能方法
作者:纳尼唐_199 | 来源:互联网 | 2022-02-27 17:29
扩展String功能方法
一直好忙,没有时间写属于自己的东西,但是看着一天天不更新心情也不是个滋味,只有从网上收罗一些比较好的东东贴上。
/*** 删除首尾空格 ***/
String.prototype.Trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
/*** 统计指定字符出现的次数 ***/
String.prototype.Occurs = function(ch) {
// var re = eval("/[^"+ch+"]/g");
// return this.replace(re, "").length;
return this.split(ch).length-1;
}
/*** 检查是否由数字组成 ***/
String.prototype.isDigit = function() {
var s = this.Trim();
return (s.replace(/\d/g, "").length == 0);
}
/*** 检查是否由数字字母和下划线组成 ***/
String.prototype.isAlpha = function() {
return (this.replace(/\w/g, "").length == 0);
}
/*** 检查是否为数 ***/
String.prototype.isNumber = function() {
var s = this.Trim();
return (s.search(/^[+-]?[0-9.]*$/) >= 0);
}
/*** 返回字节数 ***/
String.prototype.lenb = function() {
return this.replace(/[^\x00-\xff]/g,"**").length;
}
/*** 检查是否包含汉字 ***/
String.prototype.isInChinese = function() {
return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);
}
/*** 简单的email检查 ***/
String.prototype.isEmail = function() {
var strr;
var mail = this;
var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
re.exec(mail);
if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2+RegExp.$3;
else
if(RegExp.$2!="" && RegExp.$2!=".")
strr = RegExp.$1+RegExp.$2;
else
strr = RegExp.$1;
return (strr==mail);
}
/*** 简单的日期检查,成功返回日期对象 ***/
String.prototype.isDate = function() {
var p;
var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;
var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;
var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;
if(re1.test(this)) {
p = re1.exec(this);
return new Date(p[1],p[2],p[3]);
}
if(re2.test(this)) {
p = re2.exec(this);
return new Date(p[3],p[1],p[2]);
}
if(re3.test(this)) {
p = re3.exec(this);
return new Date(p[3],p[1],p[2]);
}
return false;
}
/*** 检查是否有列表中的字符字符 ***/
String.prototype.isInList = function(list) {
var re = eval("/["+list+"]/");
return re.test(this);
}
推荐阅读
-
本文探讨了酷家乐在 Serverless FaaS 领域的实践与经验,重点介绍了 FaaS 平台的构建、业务收益及未来发展方向。 ...
[详细]
蜡笔小新 2024-11-27 10:22:39
-
在团队协作开发中,为了减少频繁提交代码给领导审查的不便,开发者通常会选择从主仓库Fork出一个私有仓库,在完成特定功能后,再向主仓库发起Pull Request。本文将详细介绍这一过程的具体步骤。 ...
[详细]
蜡笔小新 2024-11-27 10:10:09
-
-
本文介绍了如何使用Workman框架构建一个功能全面的即时通讯系统,该系统不仅支持一对一聊天、群组聊天,还集成了视频会议和实时音视频通话功能,同时提供了红包发送等附加功能。 ...
[详细]
蜡笔小新 2024-11-26 15:42:43
-
继上次把backTracking的题目做了一下之后:backTracking,我把LeetCode的动态规划的题目又做了一下,还有几道比较难的Medium的题和Hard的题没做出来,后面会继续 ...
[详细]
蜡笔小新 2024-11-26 14:31:10
-
随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ...
[详细]
蜡笔小新 2024-11-26 12:55:53
-
本书《Pro Git》深入探讨了 Git 版本控制系统的核心概念与高级功能,旨在帮助开发者和团队有效管理代码变更。通过实例和最佳实践,读者将学习如何利用 Git 提升工作效率。 ...
[详细]
蜡笔小新 2024-11-26 12:09:09
-
本文旨在介绍一系列提升工作效率的浏览器插件和实用小工具,帮助用户在日常工作中更加便捷高效。内容由原作者授权发布。 ...
[详细]
蜡笔小新 2024-11-26 10:10:09
-
本文基于《Core Java Volume 2》的内容,深入探讨了网络编程中通过POST方法提交表单数据的技术细节,包括GET与POST方法的区别、POST提交的具体步骤及常见问题处理。 ...
[详细]
蜡笔小新 2024-11-26 10:00:57
-
本文详细介绍了如何利用 Python 语言从文本文件中读取数据,并将其存储为字典格式,涵盖多种实用技巧和示例代码。 ...
[详细]
蜡笔小新 2024-11-25 21:51:46
-
本文详细介绍了 SQL Server Express LocalDB,这是一种轻量级的本地 T-SQL 数据库解决方案,特别适合开发环境使用。文章还探讨了 LocalDB 与其他轻量级数据库的对比,并提供了安装和连接 LocalDB 的步骤。 ...
[详细]
蜡笔小新 2024-11-25 20:36:01
-
自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ...
[详细]
蜡笔小新 2024-11-25 19:02:33
-
2020年5月20日,在Build 2020全球开发者大会上,微软正式推出了全新的Windows Package Manager(winget),旨在简化Windows应用的安装流程。 ...
[详细]
蜡笔小新 2024-11-25 17:53:55
-
本文详细介绍了如何在本地环境中安装配置Frida及其服务器组件,以及如何通过Frida进行基本的应用程序动态分析,包括获取应用版本和加载的类信息。 ...
[详细]
蜡笔小新 2024-11-25 17:43:00
-
本作业探讨了矩阵链乘法的问题,包括问题定义、解析过程、算法设计思路及性能分析。通过将矩阵链分解为多个子问题,旨在找到最小化基本运算次数的方法。 ...
[详细]
蜡笔小新 2024-11-25 17:40:04
-