-2

可能重复:
JavaScript:字符串包含

我想在 javascript 中搜索一个字符串,看看它是否包含一些字符

<script type="text/javascript">
var s="hello world";
if(s.contains("hello")) alert("contains");
</script>

我可能期待一个像string.contains()这样的函数。它们是 javascript 中的 string.contains 还是我应该使用 indexOf 代替

4

4 回答 4

1

如果你真的想要一个包含:

String.prototype.contains = function (searchTerm) {
    return this.toString().indexOf(searchTerm) !== -1;
};

如果你觉得花哨:

String.prototype.contains = function (searchTerm) {
    return ~this.toString().indexOf(searchTerm);
};
于 2012-08-29T12:30:40.580 回答
0

indexOf 是要走的路 - 只需检查返回值。

于 2012-08-29T12:28:55.040 回答
0

尝试正则表达式:

if( /hello/.test(s) )
    alert("contains");
于 2012-08-29T12:29:52.623 回答
0
s.indexOf('hello') > -1

(文档)

s.match('hello') === true

docs,请注意,'hello'在这种情况下,这将被解释为正则表达式。)

于 2012-08-29T12:30:48.837 回答