3

文字列があり、すべての大文字の「I」を小さな「i」に置き換え、すべての小さな「i」を大文字の「I」に置き換えたいと思います。これを2段階で行うとわかるように、変換してから、以前の状態に戻します。では、どうすれば一度にすべてを行うことができますか?

<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>
4

1 に答える 1

7
newtext = text.innerHTML.replace(/[iI]/g, function(l) {
  return l.toUpperCase() === l ?
    l.toLowerCase() : l.toUpperCase();
});
于 2012-06-16T17:13:12.203 に答える