您好,登錄后才能下訂單哦!
這篇文章主要講解了“js怎么知道給定子串是否存在”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“js怎么知道給定子串是否存在”吧!
在javascript中有多種方法可以判斷指定子串是否存在,例如通過獲取子串在字符串的第一次或最后一次出現位置,然后判斷該出現位置是否真是存在,即是否有正整數值;如果有則該指定子串是存在的。
如何才能獲取到子串在字符串的第一次或最后一次出現位置?我們看看下面一個例子:
var str = "How do you do!"; //獲取子串“do”在str字符串中第一次出現的位置 var index=str.indexOf("do"); console.log("'do'在str字符串中第一次出現的位置是:"+index);
輸出結果:
因為字符串位置起始于 0,而不是 1;所以我們使用str.indexOf("do")
所獲得的第一次出現位置為4。
在看看下面一個例子:
var str = "How do you do!"; //獲取子串“do”在str字符串中最后一次出現的位置 var lastindex=str.lastIndexOf("do"); console.log("'do'在str字符串中最后一次出現的位置是:"+lastindex);
輸出結果:
可以看出,使用str.lastIndexOf("do")
所獲得的最后一次出現位置為11。
因為子串“do”是存在的(且存在多個),所以無論是第一次出現位置,還是最后一次出現位置都有正值。
我們看看不存在的情況:
var str = "How do you do!"; //獲取子串“do”在str字符串中最后一次出現的位置 var index=str.indexOf("de"); var lastindex=str.lastIndexOf("de"); console.log("'de'在str字符串中第一次出現的位置是:"+index); console.log("'de'在str字符串中最后一次出現的位置是:"+lastindex);
輸出結果:
可以看出,如果子串不存在,那么無論是第一次出現位置,還是最后一次出現位置都返回-1
。
根據這個,我們來實現給定一個子串,判斷該子串是否存在的功能函數:
function a(str1,str2){ var index=str1.indexOf(str2); var lastindex=str1.lastIndexOf(str2); if(index!=-1){ console.log("第一次出現的位置是:"+index+" ,因此 子串 “"+str2+"” 是存在的"); }else{ console.log("第一次出現的位置是:"+index+" ,因此 子串 “"+str2+"” 是不存在的"); } if(lastindex!=-1){ console.log("最后一次出現的位置是:"+lastindex+" ,因此 子串 “"+str2+"” 是存在的"); }else{ console.log("最后一次出現的位置是:"+lastindex+" ,因此 子串 “"+str2+"” 是不存在的"); } }
設置需要檢索的字符串和子串,調用a(str1,str2)函數來判斷:
var str = "How do you do!"; a(str,"do"); a(str,"de");
輸出結果:
感謝各位的閱讀,以上就是“js怎么知道給定子串是否存在”的內容了,經過本文的學習后,相信大家對js怎么知道給定子串是否存在這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。