微信小程序判断是否包含某字符串

微信小程序判断是否包含某字符串,第1张

var string =  " ABC DEF GHI ";

if(string.indexOf("ABC")>=0){

  console.log('包含此字符串')

}

string.indexOf("ABC"):返回大于等于0的整数值则表示包含此字符串,若不包含则返回-1。

 strObj.indexOf(subString[, startIndex])

JavaScript中indexOf函数方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串, 则返回 -1。

如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。 

参数: 

strObj : 必选项,String 对象或文字。 

subString :必选项,要在 String 对象中查找的子字符串。 

starIndex :可选项,该整数值指出在 String 对象内开始查找的索引。如果省略,则从字符串的开始处查找;

如果 startindex 是负数,则 startindex 被当作零。册洞如果它比最大的好嫌字符位置索引还大,则它被当作最大的可能索引。 

 lastIndexOf() 方法则是从字符串的结尾州袜枯开始检索子串。

建立三个command1、2、3

Option Explicit

Private Sub Form_Load()

Form1.AutoRedraw = True

Command1.Caption = "截取知凯子串"

Command2.Caption = "判断关系"

Command3.Caption = "退出"

End Sub

Private Sub Command1_Click()

Dim Object As String, Begin As Integer, End1 As Integer

Object = InputBox("输入字符串薯如:", "输入", "f8Jg HYTJnui*HIHI87 oy ghu gffdGHUY HIGHGHguyhg 69865g8 hg")

Print "object="Object

Begin = Val(InputBox("截取开始字符序号(1-" &Len(Object) &":", "输入", "1"))

End1 = Val(InputBox("截取终止字符序号(" &Begin &"-" &Len(Object) &":)", "输入", Len(Object)))

If Begin <1 Or Begin >Len(Object) Or End1 <Begin Or End1 >Len(Object) Then Exit Sub

Print "从第"Begin"个字符到第"End1"个字符之间截取的字符串是:"

Print Mid(Object, Begin, End1 - Begin + 1)

End Sub

Private Sub Command2_Click()

Dim A As String, B As String

A = InputBox("输入A字符串:", "输入", "f8Jg HYTJnui*HIHI87 oy ghu gffdGHUY HIGHGHguyhg 69865g8 hg")

Print A

B = InputBox("输搭手唤入B字符串:", "输入", "fdGH")

Print B

If InStr(1, A, B) Then

Print B"是"A"的子串"

Else

Print B"不是"A"的子串"

End If

End Sub

Private Sub Command3_Click()

End

End Sub

已经运行过。

如何检查一个数组(未排序)中是否包含某个特定的值?在Java中,这是一个非常有用并又很常用的 *** 作。同时,在StackOverflow中,有时一个得票非常高的问题。在下面的例子中,将展示每个方法花费的时间。

1、不同的实现方式

2) 使用Set:

3) 使用循环:陪闹

4) 使用Arrays.binarySearch:

2、时间复杂度

使用如下代码来粗略比较不同实现间的时间复杂度。虽然不是很精确,但是思路确实正确的。我们将看看数组在有5、闷配1k、10k个元素的情况下的不同表现。

结果:

使用大一点的数组(1k个元素):

结果:

从上面的结果可以清晰看到,使用简单循环的相比使用其他集合 *** 作更高效。很多很多开发人员使用第一种方法,但是它并不是最高效的。将数组转化成其他的任何集合类型都需要先将所有元素读取到集合类中,才能对这个集合类型做其他的事情。

当使用Arrays.binarySearch()方法时,数组必须是排好序的。如果数组不是排好序的,则不能使用这个方法。

事实上,如果你真的需要高效地蚂乱指检查一个数组或者集合中是否包含一个值,一个排好序的数组或者树可以达到O(log(n))的时间复杂度,HashSet甚至能达到O(1)的时间复杂度。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12512791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存