等效于ASP's.包含方法

Equivalent of ASP's .Contains method

本文关键字:包含 方法 ASP      更新时间:2023-09-26

可能重复:
JavaScript:字符串包含
Jquery:如何查看字符串是否包含子字符串

在ASP.NET C#中,我使用:

string aa = "aa bb";
if (aa.Contains("aa"))
   { 
       //Some task       
   }

我希望在JQuery中客户端的含义相同。如下所示:

var aa = "aa bb";
if(aa. -----want help here){
}

有什么方法可以做到这一点吗?

使用String.indexOf()MDN文档方法

if( aa.indexOf('aa') != -1 ){
// do whatever
}

更新

自ES6以来,有一个String.includes()MDN文档,因此您可以进行

if( aa.includes('aa') ){
// do whatever
}

您不需要jQuery。它可以通过简单的纯JavaScript实现:

var aa = "aa bb";
if(aa.indexOf("aa") >= 0){
   //some task
}

方法indexOf将返回字符串中给定子字符串的第一个索引,如果不存在该子字符串,则返回-1。

C#对.Contains的实现实际上是对.IndexOf实现的包装。因此,您可以用如下javascript创建自己的.Contains函数:
String.prototype.Contains = function (s) {
    return this.indexOf(s) != -1;
}

您可以对更复杂的场景使用正则表达式,也可以对简单的场景使用indexOf。

if (aa.match(/a(b|c)a/)) {
}

if (aa.indexOf('aa') >= 0) {
}

在Javascript中,您可以使用indexOf。

 var aa = "aa bb";
 if(aa.indexOf('aa') != -1)
 {
 }

但请记住indexOf区分大小写

您可以使用原型创建自己的contains方法如果你愿意,可以处理。

String.prototype.contains = function(value, ignorecase) {
    if (ignorecase) {
        return (this.toLowerCase().indexOf(value.toString().toLowerCase()) != -1);
    }
    else {
        return this.indexOf(value) != -1;
    }
};
alert("aa bb".contains("aa"))

来源:javascript中的'contains'方法,扩展String原型并添加您自己的方法。

由于Java 5,contains()也存在,并且可以以相同的方式使用。