如何在jQuery中反转字符串的大小写

时间:2019-03-20 02:08:58

标签: javascript jquery

Good Day,
我在获取如何将字符串转换为反大小写方面有些困难。即

var Str = 'Hello World';

则上述Str变量的反例将为hELLO wORLD。我不确定如何实现;

我有以下内容(实际上什么都不是,因为我不确定该怎么做)

$('#inverse-case').on('click', function() {//When the button with id="inverse-case" is clicked
     var Text = $('#content').val(); //Get the value of the textarea with id="content"

     var newText = Text.replace(/[A-Z]/gi, /[a-z]/);          //This is the where i no longer know what to write (sorry, i'm a bit new to jQuery)

     $('#content').val(newText);//Then updated the textarea with id="content" with the Inverse transformed Case.
});

感谢您为我指出正确方向的帮助。

2 个答案:

答案 0 :(得分:2)

一种选择是使用正则表达式检查字母字符,然后使用回调函数将字符替换为大写或小写字母:

const str = 'Hello World';
const invertedStr = str.replace(
  /[a-z]/gi,
  char => /[a-z]/.test(char)
  ? char.toUpperCase()
  : char.toLowerCase()
);
console.log(invertedStr);

答案 1 :(得分:1)

@CertainPerformance答案还可以。另一个答案如下:

var str = "Hello World";
var invertStr = "";

for (var i = 0; i < str.length; i++) {
    var ch = str.charAt(i);
    if (ch == ch.toUpperCase()) {
        invertStr += ch.toLowerCase() 
    }else{
        invertStr += ch.toUpperCase(); 
    }
}