/***
* StringCheckUtil
* 字符串检测工具
*
* @version 1.0
* @method isNum(string,scope)
* @method isChinese(string,scope)
* @method isEnglish(string,scope)
* @method isContainsString(string,subString,Case)
*/ /**
* isNum(string,scope)
* @param string:string resource
* @param scope:all,part
*/
var StringCheckUtil = function() {};
StringCheckUtil.prototype.isNum = function(string, scope) {
//检验参数合法性
if ((arguments.length != 2) || (typeof(string) != 'string') || (typeof(scope) != 'string')) {
throw new Error("Arguments is not qualified!");
}
//检验scope参数
if ((scope != 'part') && (scope != 'all')) {
throw new Error("The argument what named is 'scope' is not qualified!");
} var regex_all = /\d*/; //i忽略大小写
var regex_part = /\d/gi; switch(scope){
case 'all':
return (string.match(regex_all) == string) ? true : false;break;
case 'part':
return (regex_part.test(string));break;
default:
console.log('This string is unknown.');
}
} /**
* isContainsString(string,Case)
* @param string:string resource
* @param Case:i(case-insentitive):忽略大小写,c:(case)不忽略大小写
*
*/
StringCheckUtil.prototype.isContainsString = function(string, subString, Case) {
//检验参数合法性
if ((arguments.length != 3) || (typeof(string) != 'string') || (typeof(subString) != 'string') || (typeof(Case) != 'string')) {
throw new Error("Arguments' length is not qualified!");
}
//检验scope参数
if ((Case != 'i') && (Case != 'c')) {
throw new Error("The argument what named is 'scope' is not qualified!");
} var regex_case = (Case == 'i') ? 'i' : '';
var regex_scope = 'g'; //默认:全局 var regex = new RegExp(subString, regex_case + regex_scope);
return regex.test(string);
}

Demo:

    var string_cs = "89898 67646g 6585dgdf7";
var stringNum = "jh787kk";
var Case_cs = 'i';
var subString_cs = "67646G";
var stringUtil_cs = new StringCheckUtil(); console.log("isNum:" + stringUtil_cs.isNum(stringNum, "all"));//非得全部是整数数字(不带小数点)
console.log("isNum:" + stringUtil_cs.isNum(stringNum, "part"));//包含数字 console.log("isContainsString:" + stringUtil_cs.isContainsString(string_cs, subString_cs, Case_cs));
//忽略大小写,是否包含目标字符串

  

未完待续....

JavaScript之字符串匹配工具[插件]的更多相关文章

  1. AsciiMorph - 新奇的 ASCII 字符画生成工具&插件

    AsciiMorph 是一个新奇的 ASCII 字符画生成工具和开源插件.字符画(ASCII Art)的历史可以追溯到几十年前,起初是用在图形显示功能受限的设备上,用ASCII字符集里的可打印字符来拼 ...

  2. JavaScript 字符串匹配 | JS 的正则用法 | 从后边匹配

    // 字符串匹配命令是 match,不是 replace var text = "http://123.com/456.html" ; window.alert(text.matc ...

  3. 使用Python做简单的字符串匹配

    由于需要在半结构化的文本数据中提取一些特定格式的字段.数据辅助挖掘分析工作,以往都是使用Matlab工具进行结构化数据处理的建模,matlab擅长矩阵处理.结构化数据的计算,Python具有与matl ...

  4. 介绍两个非常好用的Javascript内存泄漏检测工具

    内存泄漏对开发者来说一般很难检测因为它们是由一些大量代码中的意外的错误引起的,但它在系统内存不足前并不影响程序的功能.这就是为什么会有人在很长时间的测试期中收集应用程序性能指标来测试性能. 最简单的检 ...

  5. 使用JavaScript开发IE浏览器本地插件实例

    使用JavaScript开发IE浏览器本地插件实例 投稿:junjie 字体:[增加 减小] 类型:转载 时间:2015-02-18我要评论 这篇文章主要介绍了使用JavaScript开发IE浏览器本 ...

  6. JavaScript和CSS实用工具、库与资源

    JavaScript和CSS实用工具.库与资源 JavaScript 库 Particles.js  - 一个用于在网页上创建漂亮的浮动粒子的 JS 库: Three.js  - 用于在网页上创建 3 ...

  7. python 字符串匹配问题

    想匹配html = <div class="back fl"><a href="javascript:void(0);" onclick=&q ...

  8. 字符串匹配Boyer-Moore算法:文本编辑器中的查找功能是如何实现的?---这应该讲的最容易懂的文章了!

    关于字符串匹配算法有很多,之前我有讲过一篇 KMP 匹配算法:图解字符串匹配 KMP 算法,不懂 kmp 的建议看下,写的还不错,这个算法虽然很牛逼,但在实际中用的并不是特别多.至于选择哪一种字符串匹 ...

  9. Python做简单的字符串匹配详解

    Python做简单的字符串匹配详解 由于需要在半结构化的文本数据中提取一些特定格式的字段.数据辅助挖掘分析工作,以往都是使用Matlab工具进行结构化数据处理的建模,matlab擅长矩阵处理.结构化数 ...

随机推荐

  1. java中父进程与子进程

    http://blog.csdn.NET/seelye/article/details/8269705

  2. html 列表 ol 、ul 、dl

    html的列表分為無序列表(ul).有序列表(ol).自定義列表(dl). 無序列表: 以<ul>開始,列表項以<li>開始: 列表項可以是段落.圖像.連接.換行符.列表等: ...

  3. BZOJ5361[Lydsy1805月赛]对称数——主席树+随机化

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=5361 好神的一道题啊! 容易看出来是要用维护权值的数据结构,因此树链剖分首先pass掉. ...

  4. Luogu4609 FJOI2016建筑师(斯特林数)

    显然排列中的最大值会将排列分成所能看到的建筑不相关的两部分.对于某一边,将所能看到的建筑和其遮挡的建筑看成一个集合.显然这个集合内最高的要排在第一个,而剩下的建筑可以随便排列,这相当于一个圆排列.同时 ...

  5. Code First 重复外键(简单方法)

    之前有说过  Code First 重复外键   的一种解决方案.   http://blog.csdn.net/hanjun0612/article/details/50478134 虽然可以解决问 ...

  6. pip download 只下载不安装命令的使用方法

    比如下载 django 1.8.11版本和simplejson 3.14.0版本的包 那么就将所需的包写入  requirement.txt 那么我的requirement.txt内容就是: djan ...

  7. GO系列教程

    1.介绍与安装 2.Hello World 3.变量 4. 类型 5.常量 6.函数(Function) 7.包 8.if-else 语句 9.循环 10.switch语句 11.数组和切片 12.可 ...

  8. 洛谷 P3705 [SDOI2017]新生舞会 解题报告

    P3705 [SDOI2017]新生舞会 题目描述 学校组织了一次新生舞会,\(Cathy\)作为经验丰富的老学姐,负责为同学们安排舞伴. 有\(n\)个男生和\(n\)个女生参加舞会买一个男生和一个 ...

  9. Python中的join()函数的用法及列表推导式

    [红色为转载后新增部分] 函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: join():连接字符串数组.将字符串.元组.列表中的元 ...

  10. 【hdu5306】 Gorgeous Sequence

    http://acm.hdu.edu.cn/showproblem.php?pid=5306 (题目链接) 题意 区间取$min$操作,区间求和操作,区间求最值操作. Solution 乱搞一通竟然A ...