精华内容
下载资源
问答
  • 测试test是否ARR数组中 if echo "${ARR[@]}" | grep -w "test" &>/dev/null; then echo "Found" fi 打印出 bf_db_list中不包含default_table的内容 bf_db_list=($(mysql --defaults-extra-file=./...

    测试test是否在ARR数组中 

    if echo "${ARR[@]}" | grep -w "test" &>/dev/null; then
        echo "Found"
    fi

    打印出 bf_db_list中不包含default_table中的内容

    bf_db_list=($(mysql --defaults-extra-file=./mysql-bf.cfg -e "show databases"))
    default_table=(Database information_schema mysql performance_schema)
    for a  in  ${bf_db_list[@]}
    do
            echo "${default_table[@]}" | grep -w "$a" &>/dev/null || echo $a
    done

     

    展开全文
  • 语法格式: [[ ${array[@]} =~ 字符串 ]] 示例: #!/bin/sh ##数组 array=( address base cart company store ) # $1 如果存在,输出 $1 exists,$1 如果存在,输出 $1 not exists if [ $1 != null ];then if ...
  • Golang 如何快速判断字符串是否在一个数组中 使用 Python 的时候,如果要判断一个字符串是否一个包含字符串的列表,可以使用in 关键词,例如: name_list = ['pm', 'kingname', '青南'] if '...

    在使用 Python 的时候,如果要判断一个字符串是否在另一个包含字符串的列表中,可以使用in 关键词,例如:

    name_list = ['pm', 'kingname', '青南']
    if 'kingname' in name_list:
        print('kingname 在列表里面')

    但是,Golang 是没有in这个关键词的,所以如果要判断一个字符串数组中是否包含一个特定的字符串,就需要一个一个对比:

    package main
    
    import "fmt"
    
    func in(target string, str_array []string) bool {
    	for _, element := range str_array{
    		if target == element{
    			return true
    		}
    	}
    	return false
    }
    
    func main(){
    	name_list := []string{"Go", "Golang", "Gin框架"}
    	target1 := "Gin框架"
    	result := in(target1, name_list)
    	fmt.Println("Gin框架 是否在 name_list 中:", result)
    }

    但这种方式有一个弊端,就是要遍历整个字符串数组。如果数组里面有100万条数据,那么平均要遍历50万次才能找到。这是一个非常费时间的操作。

    有没有什么办法可以优化这个操作呢?

    如果是有序的整型数组,那么我们可以使用二分查找,把时间复杂度O(n)降到对数时间复杂度。字符串能不能也这样操作呢?实际上是可以的。

    Golang 中,有一个排序模块sort,它里面有一个sort.Strings()函数,可以对字符串数组进行排序。同时,还有一个sort.SearchStrings()函数会用二分法在一个有序字符串数组中寻找特定字符串的索引

    结合两个函数,我们可以实现一个更高效的算法:

    package main
    
    import (
    	"fmt"
    	"sort"
    )
    
    func in(target string, str_array []string) bool {
    	sort.Strings(str_array)
    	index := sort.SearchStrings(str_array, target)
    	//index的取值:[0,len(str_array)]
    	if index < len(str_array) && str_array[index] == target { //需要注意此处的判断,先判断 &&左侧的条件,如果不满足则结束此处判断,不会再进行右侧的判断
    		return true
    	}
    	return false
    }
    
    func main(){
    	name_list := []string{"Go", "Golang", "Gin框架"}
    	target1 := "Gin框架"
    	result := in(target1, name_list)
    	fmt.Println("Gin框架 是否在 name_list 中:", result)
    }

    其中,sort.Strings是直接修改的 str_array。修改以后str_array变成有序的字符串数组。接下来通过二分查找快速定位。如果找到了,那么返回目标字符串在排序后的列表中第一次出现的索引。如果没有找到,那么返回数组中最后一个元素的索引。所以只要 index 小于最后一个元素的索引,那么目标字符串肯定存在;如果等于最后一个元素的索引,但是值不等于最后一个元素,那么目标字符串就不存在于字符串数组中。

    通过先排序再查询的方式,对于100万个元素的字符串数组,只需要查询20次左右就能确认字符串是否存在。速度大大提升。

     

    展开全文
  • 最近碰到一个这样的现象,后台返回的数据数组里面有一些有变量值,有一些没有变量值。 举例子,比如后台返回的例子是这样的:  var arr=[ { "status":"success", "activerUserData": [ {"activeUser":...
  • JS判断一个字符串是否在数组中

    千次阅读 2020-07-27 20:32:38
    方法1:arr.indexOf(某元素):未... console.log("表示数组中含有此字符串") }else{ console.log("含有此字符串,a的值为-1") } 方法2:arr.find() var arr = [1, 5, 10, 15] arr.find(function(value) { if(val
    方法1:arr.indexOf(某元素):未找到则返回 -1。
    var number= ["A", "B", "AB", "ABC"];
    var a = number.indexOf("AB")
    if(a > -1){
    	console.log("表示数组中含有此字符串")
    }else{
    	console.log("不含有此字符串,a的值为-1")
    }
    
    方法2:arr.find()
    var arr = [1, 5, 10, 15]
    arr.find(function(value) {
    	if(value ==7) {
    		console.log("表示数组中含有此数字")
    	}else{
    		console.log("不含有此数字")
    	}
    })
    
    方法三:array.findIndex()

    array.findIndex()和array.find()十分类似,返回第一个符合条件的数组元素的位置,如果所有元素都不符合条件,则返回-1

    var arr = [1,5,10,15]
    arr .findIndex(function(value, index, arr) {
    return value > 9;
    }) // 2.  
    
    // 方法二和方法三,这两个方法都可以发现NaN,弥补了方法一IndexOf()的不足
    
    
    方法4:arr.forEach
    var arr = [1,5,10,15]
    arr.forEach(v=>{
       if(v ==10) {
            console.log("表示数组中含有此数字")
    	}else{
    		console.log("不含有此数字")
    	}
    }
    方法5: for循环
    var arr = [1, 5, 10, 15];
    
    //传统for
    
    for(let i=0; i<arr.length; i++) {
    	if(arr[i] === 查找值) {
    	   //则包含该元素
    	}
    }
    // for...of
    for(v of arr) {
    	if(v === 查找值) {
    	    //则包含该元素
    	}
    }
    
    展开全文
  • C#判断一个字符是否在字符串里/数组里。 简单小例子,测试可用。赶快学习,大家一起进步吧。
  • jq判断一个字符串是否存在一个数组当中,可以用$.inArray( value, array [, fromIndex ] )参数 描述 value 任意类型 用于查找的值。 array Array类型 指定被查找的数组。 fromIndex 可选。Number类型 指定从数组的...

    jq判断一个字符串是否存在一个数组当中,可以用

    $.inArray( value, array [, fromIndex ] )
    参数  描述
    value   任意类型 用于查找的值。
    array   Array类型 指定被查找的数组。
    fromIndex   可选。Number类型 指定从数组的指定索引位置开始查找,默认为 0

    $.inArray() 函数用于在数组中查找指定值,并返回它的索引值(如果没有找到,则返回-1)

    展开全文
  • public class shuzuhe { public static void main(String[] args) { // TODO Auto-generated method stub  String []score={"a","abc","a"};... System.out.print("存在"); }  }
  • 背景: 如有字符串:String certDn = "CN=00,GIVENNAME=44,STREET=55,DNQUALIFIER...判断等号左边的字符串是否为规定值。 package com.xdja.pki.test.util; import java.util.Arrays; import java.util.List; ...
  • java判断字符串是否是json或json数组; 简单小方法,很实用;简单实用的方法;亲测可用;嗯嗯嗯呃呃呃呃呃呃呃
  • /*这是一个静态函数,不用声明对象就可以用的,如你的类名为Test,任何情况下都可以调用Test.isHave.../*此方法有两参数,第一个是要查找的字符串数组,第二是要查找的字符或字符串*/ int i = str.length; wh...
  • 开发交流QQ群:173683895 173683895 526474645 人满的请加其它群 代码 function isStr(str, val) { if (str.indexOf(val) != -1) { return true } else { return false } } function isObj(obj, val) {... ...
  • 判断一个字符串是否在一个字符串数组里package test;import java.util.ArrayList; import java.util.Arrays; import java.util.List;public class isBelongList { private static boolean isBelongList(String str)...
  • String[] str={"数学","语文","英语","物理","化学","生物"}; System.out.print("地理"); 如何判断“地理”这个字符串是否 str[] 这个数组中
  • 文章目录如何判断一个数组中是否包含一个字符或字符串1、遍历数组2、先把数组转换成list,再判断 如何判断一个数组中是否包含一个字符或字符串 1、遍历数组 String[] arr = {"1","2","3","4","6","7"}; for (int i = ...
  • 返回:查找数据所在的下标,如果没找到,返回-1如果只要知道是否有8这数字,直接调用arr.indexOf(8),如果返回值为-1,说明找到了var s=[1,2,3,5,6,9]; var u=s.indexOf(5);//返回5所在的下标3 var ...
  • //按照char进行拆分,返回字符串数组 Array.IndexOf(Array,string):返回指定stringarray的第一个匹配项的下标 Array.LastIndexOf(Array,string):返回指定stringarray的最后一个匹配项的下标 如果没有匹配...
  • # 字符串情况 s = 'hello, world!' s.find('l') s.index('l') # 数组情况 lst = [1,2,'ad','c'] lst.index(1) #0 lst.index('c') #3 区别: 1、find()和index()两者区别在于,遇到没有的元素时: find会返回
  • 如何判断一个字符串是否在一个字符串数组中
  • 例如: string a="ILOVEU"; string[] F={"I","L","U"}; 循环条件? if(怎么判断a是否在数组F里) { F里并且提取出来 }ELSE{不在}
  • 使用$.inArray方法判断,如果存在则返回0,存在返回-1,结果如下: 另外也可以将数组转为字符串,并使用正则表达式处理 转载于:https://www.cnblogs.com/lly001/p/9487914.html...
  • var arr = ["白色", "黑色", "红色", "粉色"]; var sel = "黑色"; if (arr.toString().indexOf(sel) > -1) { ... }//可以判断出黑色arr数组中 转载于:https://www.cnblogs.com/holyson/p...
  • 直接贴代码了: ublic boolean ifInclude(String[] a, String[] b) {  boolean flag = false;  for (int i = 0;... String[] longNumbers=...System.out.println("属于"); }   } 运行结果:
  • String[] s1 = {"上海","北京"," 上海"}; String s = "上海" boolean isContains = Arrays.asList(ss).contains(s);...将字符串数组使用Arrays的asList()将数组变成集合,使用集合的contains方法即可
  • linux shell 判断字符串是否在数组中

    千次阅读 2020-03-31 12:19:11
    初始化数组的另种方法是,用其他命令输出的结果来填充到数组中,例如把 ls 命令输出的文件列表填充到数组中: ARR=(`ls /opt/`) for FILE in ${ARR[@]}; do echo $FILE; done 「2」遍历数组方法为: ...
  • 今天刚好有这块的需求,所以记录下笔记: Arry.indexOf:此方法判断数组中是否存在某个值,如果存在返回数组元素的...//判断字符串中是否包含一个字符 let str="hello word!" if(str.indexOf('10') >-1) { aler
  • 微信小程序开发交流qq群 173683895 ...1、判断字符串里面是否包含一个字符串 示例: var a = 'aaaaaaaav' console.log(a.includes('v')); //true var a = 'aaaaaaaav' console.log(a.i...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 583,933
精华内容 233,573
关键字:

判断一个字符串在不在数组中