会社で Zenn Publication を導入したので、個人アカウントからちょっとした Tips 記事を書いてみます。 TL;DR JavaScript の String.prototype.substring は UTF-16 コードユニットを数えるので、英数字と日本語文字が混じっていても問題なく「人間から見た文字数」で動作する 絵文字などコードユニットを複数使う文字では、切り取り指定通りの文字数にならないことがある Unicode プロパティを指定した正規表現を使うと絵文字対応版の substring が簡単に実装できる マルチバイト文字列の substring を取得したい ちょっとした事情で、マルチバイト文字列の部分文字列を取り出す必要が生じました。例えば「あいうえお」の 2 文字目から 3 文字目を取り出して「いう」という文字列を作りたい、といったユースケースです。 この際、全