/***
* 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. C#遍历类的属性,然后给其赋值

    public class PP { public string a { get; set; } public string b { get; set; } public string c { get; ...

  2. target存放的是编译后的.class文件地方 默认情况下不会讲非class文件放入进入 如果要使用非.class文件 需要通过增加配置方式自动加入文件

    target存放的是编译后的.class文件地方 默认情况下不会讲非class文件放入进入 如果要使用非.class文件 需要通过增加配置方式自动加入文件

  3. BZOJ4828 AHOI/HNOI2017大佬(动态规划+bfs)

    注意到怼大佬的操作至多只能进行两次.我们逐步简化问题. 首先令f[i][j]表示第i天结束后自信值为j时至多有多少天可以进行非防御操作(即恢复自信值之外的操作).这个dp非常显然.由于最终只需要保证存 ...

  4. 【转】linux环境内存分配原理 malloc info

    Linux的虚拟内存管理有几个关键概念: Linux 虚拟地址空间如何分布?malloc和free是如何分配和释放内存?如何查看堆内内存的碎片情况?既然堆内内存brk和sbrk不能直接释放,为什么不全 ...

  5. 精选Spring Boot三十五道必知必会知识点

    Spring Boot 是微服务中最好的 Java 框架. 我们建议你能够成为一名 Spring Boot 的专家.本文精选了三十五个常见的Spring Boot知识点,祝你一臂之力! 问题一 Spr ...

  6. C#/.NET转Java学习笔记

    大学研究了三年的.Net,由于偶然的机会,拿到IBM的Java web实习offer,所以决定转行搞Java(综合了校招情况.发展前景和其他各种因素). 下面是我在学习Java web的一些学习笔记( ...

  7. [luogu2822][组合数问题]

    题目链接 题解: 对于上面和下面的式子进行分解质因数,然后看看上面的质因数个数减去下面的质因数个数能不能达到k的质因数的要求即可. 分解质因数的时候用对于阶乘分解质因数的常用方法:比如要求1999!中 ...

  8. window.open打开页面居中显示

    <script type="text/javascript"> function openwindow(url,name,iWidth,iHeight) { var u ...

  9. typescript泛型(学习笔记非干货)

    软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性. 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型, 这在创建大型系统时为你提供了十分灵活的功能. In softwa ...

  10. git<git常用命令>

    1,初始化仓库: git init --此命令会在当前目录下新建一个Git仓库.新建了一个 .git的隐藏目录,仓库的所有数据都放在这个目录里.目前还是空的. 2,跟踪,暂存文件: git add - ...