使用indexOf判断字符是否存在

Aimis 2011-04-06 04:27:31
字符串结构,例如: var strList = "17;1217;917;11219;";

关键字:var OneList = "19;"

判断OneList是否在strList是否存在~



能否使用indexOf(正则表达式) 来判断
...全文
428 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
cb1156 2011-04-06
  • 打赏
  • 举报
回复
var strList = "117;1217;917;11219;17";
var oneList="17";
alert((";"+strList).indexOf(";"+oneList));


脑袋一下没转过来。。 一下没理解LZ意思 = =

囧..

于是特点是这样的话。。。。
Aimis 2011-04-06
  • 打赏
  • 举报
回复
算了,这贴先结了,明天再发帖讨论效率问题~

非常感谢各位的帮助,获益良多~


jt~
Aimis 2011-04-06
  • 打赏
  • 举报
回复
其实我就是想知道使用正则的和我的方法,效率上有木有明显的变化~
knightzhuwei 2011-04-06
  • 打赏
  • 举报
回复
在这种地方追求效率没啥意义
Aimis 2011-04-06
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 knightzhuwei 的回复:]
JScript code

var strList = "17;1217;917;11219;";
alert(strList.search(/\b19;/));//返回-1 表示不存在
[/Quote]

我其实也写了一个方法:

var strList = "17;1217;917;11219;";
var OneList = "19"
var Temp = 0;
for( var i=0; i<strList.split(';').length-1; i++ )
{
if( strList.split(';')[i] == OneList ) Temp += 1;
}

if( Temp > 0 )alert('存在');
else alert('不存在');


请问这两种方法哪种更快~
knightzhuwei 2011-04-06
  • 打赏
  • 举报
回复

var strList = "17;1217;917;11219;";
alert(strList.search(/\b19;/));//返回-1 表示不存在
Aimis 2011-04-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hongmei85 的回复:]
JScript code
var strList = "17;1217;917;11219;";
var re = /19;/
alert(re.test(strList))
[/Quote]

这个结果应该是false就对了,但返回了true,并没有成字符串的查找~
ZiSheng 2011-04-06
  • 打赏
  • 举报
回复

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'ok.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
<script type="text/javascript">
function cc3(){
var s="17;1217;917;11219;";
var patten=/19;/g;
if(patten.test(s)){
alert("里边包含19");
}else{
alert("里边没有包含");
}
}
</script>

</head>

<body>
<input type="button" value="Click" onclick="cc3();"/>
</body>
</html>
Aimis 2011-04-06
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 cb1156 的回复:]
lz自己都有方向了
稍微搜索一下不就知道了么

indexOf(STR)
没找到返回 -1 找到返回索引
[/Quote]

呵呵,如果用正常indexOf,除非把字符串格式改为“;17;1217;917;11219;",否则如果要搜索"17;"就完了~
cb1156 2011-04-06
  • 打赏
  • 举报
回复
lz自己都有方向了
稍微搜索一下不就知道了么

indexOf(STR)
没找到返回 -1 找到返回索引
ZiSheng 2011-04-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 aimis 的回复:]
引用 4 楼 hongmei85 的回复:
JScript code
alert(re.test(strList))


这个test是什么?
[/Quote]
test是正则对象RegExp的一个方法,里边是测试的字符串,匹配则返回真,否则返回假
Atai-Lu 2011-04-06
  • 打赏
  • 举报
回复
test,正则式判断是否匹配
Aimis 2011-04-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 hongmei85 的回复:]
JScript code
alert(re.test(strList))
[/Quote]

这个test是什么?

hongmei85 2011-04-06
  • 打赏
  • 举报
回复
		<script type="text/javascript">
<!--
var strList = "17;1217;917;11219;";
var OneList = "19;"
alert(strList.indexOf(OneList));
var re = /19;/
alert(re.test(strList))
//-->
</script>
knightzhuwei 2011-04-06
  • 打赏
  • 举报
回复
var strList = "17;1217;917;11219;";
alert(strList.search(参数可以是正则))
Aimis 2011-04-06
  • 打赏
  • 举报
回复
可否说的详细些?
knightzhuwei 2011-04-06
  • 打赏
  • 举报
回复
可以用search+正则来判断

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧