js如何判断字符串以什么开头

时间:2021-10-17 05:17:21
好比C#当中StartsWith的功能
比如我有一个字符串为str1 = "abcd";
我输入的是 a,ab,abc,abcd 这四个都可以查到str1这个字符串.
也有点类似模糊查询.
如何解决.因为对js不是很熟.

13 个解决方案

#1


up

#2


js截取字符串
var obj="你输入的字符串";
if(obj.substring(0,4) == "idiv")
{
}
else
{
}

#3


楼上的方法完全不行....
我随便拿个例子.你就还真以为是0,4了-_#...
那不是得一次一次的判断?

#4


你这家伙,我给你解决问题里,你说话也不客气点!
什么“完全不行?!”
什么”你还真以为?!“
我给你个0,4
你就用0,4呀!
0是启示位置
4是截取的个数!

这样试试:服了你了!

function get(xx)
{
   var str="abcd";
   if(str.substring(0,xx.length) == xx)
   {}
   else
   {}
}

#5


substring

#6


先说一下...对不起啊...
可能是我的语言能力不好...
要是有啥伤到你的..
在次说下对不起...
你帮我回问题..我也谢谢你..

不过你的方法好象不是我想要的
比如我有一个字符串为str = "abcd"; 
我输入的是 a,ab,abc,abcd 这四个都可以查到str1这个字符串. 
我要的是不管是输入a,ab,abc,abcd都能查到.
你的方法是不是
if(str.substring(0,x)==输入的值)
{
}
else
{
}
那样的话只能判断一次
要不得循环?
var i = 1;
for(var i = 1;i < str.length;i++)
{
    if(str.substring(0,i)==输入的值)
    {
        ....;
        break;
    }
    else
    {
    }
}
你的意思我了解...我想问一下有没有更好的方法呢...
在次感谢你...

#7


哈哈.最好用正则.
string testStr="IamSomething";
string  pattern="adcd.*"  这句话的意思是.必须以"adcd"字符串开始,后面无论什么字符.
if(pattern .test(testStr))为true就是成功

#8


我想要的就是正则...不过js不太熟...也没去看..
要不就问一下有没有和StartsWith功能相同的..
能给个正则吧?

#9


用正则表达式

indexOf()

#10


楼上刚好有个...我试一下...不行我在发贴求助 

#11


indexOf()应该是查询字符串是否..
不是以什么开头的吧?

#12


LZ想做类似google那样的关联搜索吧。
用ajax吧。
js触发keyup, keypress,keydown 事件试试吧

#13


str.indexOf(str1) == 0
不就和C#当中StartsWith的功能一样了吗

#1


up

#2


js截取字符串
var obj="你输入的字符串";
if(obj.substring(0,4) == "idiv")
{
}
else
{
}

#3


楼上的方法完全不行....
我随便拿个例子.你就还真以为是0,4了-_#...
那不是得一次一次的判断?

#4


你这家伙,我给你解决问题里,你说话也不客气点!
什么“完全不行?!”
什么”你还真以为?!“
我给你个0,4
你就用0,4呀!
0是启示位置
4是截取的个数!

这样试试:服了你了!

function get(xx)
{
   var str="abcd";
   if(str.substring(0,xx.length) == xx)
   {}
   else
   {}
}

#5


substring

#6


先说一下...对不起啊...
可能是我的语言能力不好...
要是有啥伤到你的..
在次说下对不起...
你帮我回问题..我也谢谢你..

不过你的方法好象不是我想要的
比如我有一个字符串为str = "abcd"; 
我输入的是 a,ab,abc,abcd 这四个都可以查到str1这个字符串. 
我要的是不管是输入a,ab,abc,abcd都能查到.
你的方法是不是
if(str.substring(0,x)==输入的值)
{
}
else
{
}
那样的话只能判断一次
要不得循环?
var i = 1;
for(var i = 1;i < str.length;i++)
{
    if(str.substring(0,i)==输入的值)
    {
        ....;
        break;
    }
    else
    {
    }
}
你的意思我了解...我想问一下有没有更好的方法呢...
在次感谢你...

#7


哈哈.最好用正则.
string testStr="IamSomething";
string  pattern="adcd.*"  这句话的意思是.必须以"adcd"字符串开始,后面无论什么字符.
if(pattern .test(testStr))为true就是成功

#8


我想要的就是正则...不过js不太熟...也没去看..
要不就问一下有没有和StartsWith功能相同的..
能给个正则吧?

#9


用正则表达式

indexOf()

#10


楼上刚好有个...我试一下...不行我在发贴求助 

#11


indexOf()应该是查询字符串是否..
不是以什么开头的吧?

#12


LZ想做类似google那样的关联搜索吧。
用ajax吧。
js触发keyup, keypress,keydown 事件试试吧

#13


str.indexOf(str1) == 0
不就和C#当中StartsWith的功能一样了吗