2012-03-25 3 views
0

Например, у меня есть утвержденный список символов: «a», «b» и «c».Проверьте, содержит ли строка символ, не включенный в список

Так что, если у меня была строка:

var string = "aaabc8abccc"; 

Я хотел бы сценарий, чтобы обнаружить тот факт, что «8» не является «а», «б» или «с» и вывод:

var output = "aaabc<span style='color:red;'>8</span>abccc"; 

Как это сделать?

ответ

3
var strn= "aaabc8abccc"; 
var chrs = 'abc'; 
strn=strn.replace(new RegExp('([^'+chrs+'])','g'),'<span style="color:red">$1</span>'); 
+1

Я не буду врать, была некоторая начальная турбулентность с кодом, но она работает сейчас. – mowwwalker

+0

Большое спасибо !!!!!!!!!!! – supercoolville

5

Regex:

result = subject.replace(/[^abc]/ig, "<span style='color:red;'>$&</span>"); 
+0

Что такое '$ &' match? – qwertymk

+1

@qwertymk, Он соответствует строке. Я всегда любил: http://gskinner.com/RegExr/ – mowwwalker

-2

Вы можете сделать это с помощью регулярных выражений с использованием string.replace(regexp/substr,newstring)

В вашем случае это будет нечто вроде

string.replace(/^[a-z]*/,"<span>$1</span>") 
Смежные вопросы