.

Google Search Console(通称サチコ)を確認していたら以下のようなエラーが表示されていました。
[拡張] > [解析不能な構造化データ] > [文字列中に無効なエスケープ シーケンスがあります]

今回はこちらについて原因と解決方法を解説してみたいと思います。
「文字列中に無効なエスケープ シーケンスがあります」とは
まずこの問題を知るにはエスケープシーケンスが何かを理解する必要があります。
エスケープシーケンスとは
エスケープシーケンス (escape sequence) とは、コンピュータシステムにおいて、通常の文字列では表せない特殊な文字や機能を、規定された特別な文字の並びにより表したもの。
出典 Wikipedia
例えば < > や ” などのHTMLで使う記号は、通常の文字として使えません。こういった場合、エスケープシーケンスを使うことで使えるようになりますよ、ということです。
| 特殊記号 | エスケープシーケンス |
| < | < |
| > | > |
| “ | " |
今回の問題では構造化データにエスケープシーケンスが含まれてるけど、これ無効ですよ、というサチコさんからのご指摘なのでJavaScript内での問題になります。
| 意味 | エスケープシーケンス |
| ダブルコォーテーション | \” |
| 改行 | \n |
このようにバックスラッシュ( \ )はエスケープシーケンスが始まる記号として使われます。
解決方法
原因となっている箇所を確認してみましょう。
[拡張] > [解析不能な構造化データ] > [文字列中に無効なエスケープ シーケンスがあります]

上画像の赤枠部分に問題となっているページのURLがありますので、こちらをクリックします。
すると右側に詳細画面が表示されるのですが、ここにある赤のハイライト部分(矢印部分)が問題となっている箇所です。
今回の場合では構造化データのソースコードでバックスラッシュを使っていますが、エスケープシーケンスは無効ですよ、というのが原因でした。
このページでは「\ ◯◯◯◯ /」のようにタイトルを強調するような使い方をしていましたが、バックスラッシュを文字列として使うのはやめた方が良さそうです。
顔文字でもバックスラッシュが含まれるものがありそうですし、避けた方が無難でしょうね。
で、バックスラッシュを消すか大文字「\」に変換すれば修正は完了です。
解決しているか確認する
それでは修正ができているか確認してみまいしょう。エラーが表示されている画面で「修正を検証」を押してみます。

検証が終わると下画像のようなメールが届きます。僕は2〜3日待ちました。

このように、「エラーが正常の修正されました」と書かれていれば完了です。
終わり
今回はサーチコンソールの「無効なエスケープ シーケンスがあります」について解説しました。
このブログでは、このように自分自身がWEB関係のことで困ったことについて解決方法を備忘録しています。みなさんの「困った」の手助けになれたら幸いです。
最後までお読みいただきありがとうございました。

コメントを残す