1. ホーム
  2. javascript

[解決済み] camelCase」を「キャメルケース」に変換するには?

2022-04-22 18:48:37

質問

JavaScriptの正規表現コマンドで、次のような処理をさせようとしています。 "thisString""This String" しかし、最も近いのは一文字を置き換えることで、次のような結果になります。 "Thi String" または "This tring" . 何かアイデアはありますか?

はっきり言って、私は文字を大文字にする単純さは扱えますが、RegExや分割は苦手です。 "somethingLikeThis""something Like This" が、困っているところです。

どのように解決するのですか?

"thisStringIsGood"
    // insert a space before all caps
    .replace(/([A-Z])/g, ' $1')
    // uppercase the first character
    .replace(/^./, function(str){ return str.toUpperCase(); })

ディスプレイ

This String Is Good

(function() {

  const textbox = document.querySelector('#textbox')
  const result = document.querySelector('#result')
  function split() {
      result.innerText = textbox.value
        // insert a space before all caps
        .replace(/([A-Z])/g, ' $1')
        // uppercase the first character
        .replace(/^./, (str) => str.toUpperCase())
    };

  textbox.addEventListener('input', split);
  split();
}());
#result {
  margin-top: 1em;
  padding: .5em;
  background: #eee;
  white-space: pre;
}
<div>
  Text to split
  <input id="textbox" value="thisStringIsGood" />
</div>

<div id="result"></div>