javascript的indexOf忽略大小写的方法

把他们全都换成大写或小写,再比较就可以了 
indexOf对象内第一次出现子字符串的字符位置 
用toLowerCase或toUpperCase

var testStr = 'ABCDEF';
var subStr = 'bcd';

alert(testStr.toLowerCase().indexOf(subStr.toLowerCase()));
testStr = 'AbCdEf';
alert(testStr.toLowerCase().indexOf(subStr.toLowerCase()));

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

String.prototype.indexOf = function(f,m){
var mm = (m == false) ? "i":"";
var re = eval("/"+ f +"/"+mm);
var rt = this.match(re);
return (rt == null) ? -1:rt.index;
}

var test = "absnegKIugfkalg";

alert(test.indexOf("kiu",false));

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

看看我这个,兼容原来的 indexOf

/*
作者:阿牛(牛昆亮) QQ:273352165 MSN:niukl@hotmail.com

声明:可以免费使用,请您保留此信息
如果您有什么改过,记得告诉我!
*/
String.prototype._indexOf = String.prototype.indexOf;
String.prototype.indexOf = function()
{
if(typeof(arguments[arguments.length - 1]) != 'boolean')
return this._indexOf.apply(this,arguments);
else
{
var bi = arguments[arguments.length - 1];
var thisObj = this;
var idx = 0;
if(typeof(arguments[arguments.length - 2]) == 'number')
{
idx = arguments[arguments.length - 2];
thisObj = this.substr(idx);
}

var re = new RegExp(arguments[0],bi?'i':'');
var r = thisObj.match(re);
return r==null?-1:r.index + idx;
}
}

alert("bcssssasdfsdf".indexOf('A',3,true));

alert("bcssssasdfsdf".indexOf('a',3));

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • Javascript 数组添加一个 indexOf 方法的实现代码

    //b = ", b.join(","), ""); document.write("b.indexOf(2) = ", b.indexOf(2)); document.write("b.indexOf('嘿嘿') = ", b.indexOf('嘿嘿')); //]]> [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 运行以上代码,即可.如果大家想看的是 javascript indexOf的使用

  • JavaScript中关于indexOf的使用方法与问题小结

    这个方法相当有用,很多编程语言中都有相对应的实现,javascript中也不例外,然而当我在ie中运行如下代码时候: 复制代码 代码如下: var arr = [1,2,3]; alert(arr.indexOf(1)); 却被提示"对象不支持此属性和方法" .而在chrome,ff下去运行良好.遂去求问google大神,发现原来js中Array的indexOf方法在js1.6版本中才给予了实现,ie7,8中只实现到了js1.3版本,chrome为js1.7版本,ff为js1.8版本.

  • javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法

    Split方法: 以下程序例子实现了split和整数字符串互转的用法... <script > function evil() { var toint=parseInt("123");//字符串转换成整形 var intvalue=123; var tostr=intvalue.toString();//类型转换成字符串 var my_friends ="test1,test2,test3,test4,test5"; var friend_array =

  • javascript indexOf方法、lastIndexOf 方法和substring 方法

    indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(searchvalue,fromindex) 参数 描述 searchvalue 必需.规定需检索的字符串值. fromindex 可选的整数参数.规定在字符串中开始检索的位置.它的合法取值是 0 到 stringObject.length - 1.如省略该参数,则将从字符串的首字符开始检索. 说明 该方法将从头到尾地检索字符串 stringObject,看它是否含有子串

  • javascript indexOf函数使用说明

    使用方法:strObj.indexOf(str,startIndex[可选]) 程序代码 其中strObj是必选项.String 对象或文字. str是必选项.要在 String 对象中查找的子字符串. startIndex是可选项.该整数值指出在 String 对象内开始查找的位置,从0开始.如果省略,则从字符串的开始处查找. 注意:对于JavaScript的indexOf是区分大小写的. JavaScript中indexOf函数方法返回一个整数值,指出 String 对象内子字符串的开始位置

  • js indexOf()定义和用法

    返回 String 对象内第一次出现子字符串的字符位置. strObj.indexOf(subString[, startIndex]) 参数 strObj 必选项.String 对象或文字. subString 必选项.要在 String 对象中查找的子字符串. starIndex 可选项.该整数值指出在 String 对象内开始查找的索引.如果省略,则从字符串的开始处查找. 说明 indexOf 方法返回一个整数值,指出 String 对象内子字符串的开始位置.如果没有找到子字符串,则返回

  • JavaScript indexOf忽略大小写

    下面像大家介绍如何让javascript中indexOf函数忽略大小写呢. 把他们全都换成大写或小写,再比较就可以了. 这是比较简单的一种做法! indexOf对象内第一次出现子字符串的字符位置, 用toLowerCase或toUpperCase如下代码: var testStr = 'ABCDEF'; var subStr = 'bcd'; alert(testStr.toLowerCase().indexOf(subStr.toLowerCase())); testStr = 'AbCdEf

  • js截取函数(indexOf,join等)

    函数:indexOf() 功能:返回字符串中匹配子串的第一个字符的下标 复制代码 代码如下: var myString="JavaScript"; var w=myString.indexOf("v");w will be 2 var x=myString.indexOf("S");x will be 4 var y=myString.indexOf("Script");y will also be 4 var z=myStr

  • javascript的indexOf忽略大小写的方法

    把他们全都换成大写或小写,再比较就可以了  indexOf对象内第一次出现子字符串的字符位置  用toLowerCase或toUpperCase var testStr = 'ABCDEF'; var subStr = 'bcd'; alert(testStr.toLowerCase().indexOf(subStr.toLowerCase())); testStr = 'AbCdEf'; alert(testStr.toLowerCase().indexOf(subStr.toLowerCas

  • mysql表名忽略大小写配置方法详解

    linux下mysql默认是要区分表名大小写的.mysql是否区分大小写设置是由参数lower_case_table_names决定的,其中: 1)lower_case_table_names = 0  区分大小写(即对大小写不敏感),默认是这种设置.这样设置后,在mysql里创建的表名带不带大写字母都没有影响,都可以正常读出和被引用. 2)lower_case_table_names = 1  不区分大小写(即对大小写敏感).这样设置后,表名在硬盘上以小写保存,MySQL将所有表名转换为小写存

  • PyCharm代码提示忽略大小写设置方法

    如图: 具体见上图! 以上这篇PyCharm代码提示忽略大小写设置方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Javascript中indexOf()和lastIndexOf应用方法实例

    indexOf()方法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 注释:indexOf() 方法对大小写敏感! 注释:如果要检索的字符串值没有出现,则该方法返回 -1. 用之前的charAt()方法 var str ='www.webclks.com/archives/3309'; for(var i=0; i<str.length; i++){ if(str.charAt(i)==='/'){ alert(i); } } indexOf()方法 var str

  • python实现忽略大小写对字符串列表排序的方法

    本文实例讲述了python实现忽略大小写对字符串列表排序的方法,是非常实用的技巧.分享给大家供大家参考.具体分析如下: 先来看看如下代码: string = ''' the stirng Has many line In THE fIle jb51 net ''' list_of_string = string.split() print list_of_string #将字符串分离开,放入列表中 print '*'*50 def case_insensitive_sort(liststring

  • JavaScript使用indexOf获得子字符串在字符串中位置的方法

    本文实例讲述了JavaScript使用indexOf获得子字符串在字符串中位置的方法.分享给大家供大家参考.具体如下: <!DOCTYPE html> <html> <body> <p id="demo"> Click the button to locate where in the string a specifed value occurs.</p> <button onclick="myFunction

  • JavaScript使用indexOf()实现数组去重的方法分析

    本文实例讲述了JavaScript使用indexOf()实现数组去重的方法.分享给大家供大家参考,具体如下: 数组去重方法有多中,这里列举出自己认为比较容易理解的方法. 思路: 1. 创建一个新的空数组,用来存放去重后的新数组. 2. 利用for循环循环遍历需要去重的数组. 3. 利用indexOf()方法查询遍历出的数组在新数组中是否出现,如果出现:则继续遍历数组,如未出现:则利用push方法添加到新数组中. 4. 原数组循环遍历完成后,组建一个已经去除重复的新数组. <script> va

  • Bash Shell中忽略大小写的设置方法

    大多数人在使用 Bash 时,都会对其进行改造,因为默认的设置真的好难用- 参考以下 ~/.inputrc 设置: 复制代码 代码如下: # do not show hidden files in the list set match-hidden-files off   # auto complete ignoring case set show-all-if-ambiguous on set completion-ignore-case on "\ep": history-sear

  • Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写的方法

    在linunx系统刚装的MySQL,忘记曾经设置的密码或者安装过程无法设置密码时,试图用常用的密码猜测,如:1,11,111,1111,11111,111111,123456,000000,1234321等等最简单的默认密码来试探,结果试遍了也不对,还是无法进入mysql.原因可能是你当初设置的密码比较复杂后来给忘了,更可能的原因是你安装过程中没允许设置密码,这样的密码一般是MySQL随机生成的一大串由大小写字母.数字和符号组合成的复杂密码.这样的密码不需要白费力去试探了,这就需要通过特殊的方式

随机推荐