Соответствие строки (Javascript) - PullRequest
0 голосов
/ 06 мая 2011

У меня есть следующие функции JavaScript:

function fun1()
{
...
return 'Over';
}
function fun2()
{
...
return 'Hello';
}
function fun3()
{
..
return 'Over';
}

function fun4()
{
..
return 'Over';
}
function fun5()
{
...
return 'Bye';
}
....
var errmsg='';

errmsg+=fun1();
errmsg+=fun2();
errmsg+=fun3();

var newmsg = errmsg;

if (newmsg.match('Over'))
{
checklist();
}

в соответствии с кодом, если fun1 () и fun2 () имеют значение true, errmsg = 'OverHello' и если fun1 () и fun3 () имеют значение true, errmsg = 'OverOver'

Я хочу, чтобы newmsg соответствовал ТОЛЬКО функциям, которые возвращают 'Over' ... так что если errmsg = 'Over' или 'OverOver' и т. Д., ТОЛЬКО тогда он будет запускать функцию checklist ().

Есть ли способ проверить это условие, используя строковые методы (например, сопоставление, содержит и т. Д.)?

Пожалуйста, помогите.

Ответы [ 3 ]

2 голосов
/ 06 мая 2011

Существует функция match () для строковых объектов в javascript.

Вы можете использовать ее следующим образом

var pattern=/over/gi;
alert(errmsg.match(pattern));
1 голос
/ 06 мая 2011

Следующий тест должен решить ваше требование:

errmsg.match(/^(Over)+$/)
0 голосов
/ 06 мая 2011

Может быть, вы можете заменить весь текст «Over» в строке. Если после этой операции остается какой-либо текст, ваша строка содержит что-то еще, кроме 'Over', и ваш чек возвращает false

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...