// Для регулярных выражений есть специальный объект - RegExp. var re = new RegExp("d","g"); // Свойства re.index re.lastIndex re.lastMatch re.lastParen re.leftContext re.rightContext re.$1 - re.$9 // Методы re.compile(pattern, [flags]) re.exec(str) re.test(str) // Дополнительные методы у класса String strObj.match(re) strObj.replace(re, replaceText) strObj.search(re) // Есть несколько вариантов использования регулярных выражений: // Вариант 1 var re = new RegExp("d(b+)(d)","ig"); var str = "cdbBdbsbdbdz"; var arr = re.exec(str); s = "$1 contains: " + RegExp.$1; s += "$2 contains: " + RegExp.$2; // Вариант 2 var re = /w+/g; var arr; while ((arr = re.exec(str)) != null) { } // Вариант 3 var ss = "The rain in Spain falls mainly in the plain."; var re = /(S+)(s+)(S+)/g; r = ss.replace(re, "$3$2$1"); // Вариант 4 // Преобразование градусов F с C function f2c(s) { var test = /(d+(.d*)?)Fb/g; return(s.replace(test, function($0,$1,$2) { return((($1-32) * 5/9) + "C"); } )); } Стоит отметить, что регулярные выражения в MS работают очень медленно, и являются источником труднообнаруживаемых ошибок, если не следить за типами данных.
JavaScript Справочник v0.05 © 2007-2024 Igor Salnikov aka SunDoctor