我有一个字符串,我想用小'i'替换每个首都'I',用'I'代替每个小'i'。正如您所看到的,如果我分两个阶段执行此操作,它只需转换它,然后将其转换回之前的状态。那我怎么一下子就这么做呢?
<html>
<head>
<script type="text/javascript">
function init() {
text = document.getElementById('test');
newtext = text.innerHTML.replace(/I/g, "i");
newtext = newtext.replace(/i/g, "I");
text.innerHTML = newtext;
}
</script>
</head>
<body onload="init()">
<div id="test">
THIS IS SOME TEST
</div>
</body>
</html>
答案 0 :(得分:7)
newtext = text.innerHTML.replace(/[iI]/g, function(l) {
return l.toUpperCase() === l ?
l.toLowerCase() : l.toUpperCase();
});