Należy sprawdzić, czy ciąg zawiera inny ciąg znaków, czy nie?ciąg znaków JQuery zawiera sprawdzanie
var str1 = "ABCDEFGHIJKLMNOP";
var str2 = "DEFG";
Z jakiej funkcji mogę się dowiedzieć, czy str1 zawiera str2?
Należy sprawdzić, czy ciąg zawiera inny ciąg znaków, czy nie?ciąg znaków JQuery zawiera sprawdzanie
var str1 = "ABCDEFGHIJKLMNOP";
var str2 = "DEFG";
Z jakiej funkcji mogę się dowiedzieć, czy str1 zawiera str2?
Można użyć funkcji javascript: indexOf.
var str1 = "ABCDEFGHIJKLMNOP";
var str2 = "DEFG";
if(str1.indexOf(str2) != -1){
console.log(str2 + " found");
}
to działałoby tylko wtedy, gdy podłańcuch ma ścisłe dopasowanie, nie będzie działało wokół "DEfG", ponieważ f jest małe. –
@RedSwan: możesz przekonwertować ciąg na wielkie lub małe litery, a następnie wykonaj porównanie, problem rozwiązany. – diggersworld
['indexOf()' nie jest obsługiwany w IE <9] (http://stackoverflow.com/q/8848097/339874) – mulllhausen
Wyjazd funkcji JavaScript za IndexOf. http://www.w3schools.com/jsref/jsref_IndexOf.asp
var str1 = "ABCDEFGHIJKLMNOP";
var str2 = "DEFG";
sttr1.search(str2);
powróci do położenia spotkania lub -1, jeśli nie stwierdzono.
Byłoby miło zauważyć, że [Array.prototype.search] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/search) niejawnie konwertuje ciąg znaków na wyrażenie regularne, które może nie dać pożądanego rezultatu. – cpburnz
Spróbuj:
str1.contains(str2)
CurrentPage.contains nie jest funkcją – mzonerz
Jest tak, ponieważ .contains() jest metodą jQuery. –
Jeśli obawy o wielkość liter zmiany sprawę i porównać ciąg.
if (stringvalue.toLocaleLowerCase().indexOf("mytexttocompare")!=-1)
{
alert("found");
}
prostu na pętli foreach z można porównać, oddzielone do struny
var commaseparateMainstring = 'shekar,jagadeesh,pavan,sai,suneel';
var sustring = 'shekar,gopi,raju,suneel';
//adding comma both sides of main string
var main = ',' + commaseparateMainstring + ',';
//substring change as array
var substingArray = listToArray(sustring, ',');
$.each(substingArray, function (index, value) {
//calling is exist method here value means each value in substring
var isexisted = isExist(main, value)
if (isexisted) {
//substring item existed
}
else {
}
});
//isExist method it checks substring exist in mainstring or not
function isExist(mainString, substring) {
if (mainString.indexOf(substring) != -1) {
return true;
}
else {
return false;
}
}
To działa na mnie
if (~str.indexOf("Yes"))
używam,
var text = "some/String"; text.includes("/") <-- returns bool; true if "/" exists in string, false otherwise.
Poniższy kod umożliwia sprawdzenie, czy ciąg "hello" jest zakończony, czy nie w podanym łańcuchu.
if (our_string.indexOf('hello') > -1)
{
alert("hello found inside our_string");
}
Mam nadzieję, że ta odpowiedź jest przydatna.
** Benchmark ** różnych rozwiązań można znaleźć tutaj: http://jsben.ch/#/RVYk7 – EscapeNetscape
Krótka prezentacja wideo różnych rozwiązań: http://stackoverflow.com/questions/1789945/how- to-check-if-one-string-zawiera-inny-podłańcuch-w-javascript – ssmith