2009-09-24 3 views

ответ

0

Попробуйте это:

str = str.replace(/<\s*\/?\w+/g, function($0) { return $0.toLowerCase(); }); 
1

Вам нужно использовать toLowerCase(), в сочетании с регулярными выражениями.

Попробуйте это (от here):

s = s.replace(/< *\/?(\w+)/g,function(w){return w.toLowerCase()}); 

Где s является innerHTML элемента, содержащего теги, которые вы хотите заменить их строчными эквивалентами.

0

попробовать это: </?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)/?>

2

Это только едва испытано, и, вероятно, следует дополненной.

Регулярные выражения могут использовать функцию замены, чтобы выполнять более сложные замены. Если мы используем эту функциональность, мы можем придумать что-то вроде:

var tag = '<DIV STYLE="WOA"></DIV>'; 
tag.replace(/<(\/?\w+)/g, function(r) { 
    return r.toLowerCase(); 
}); 
Смежные вопросы