2016年10月28日金曜日

【トレジャーデータ】先頭のバックスペース(\b)を除去(regexp_replace)

TDに溜まっているデータから記事別UUを集計しgs(google spreadsheet)にデータをアップロードしたところ下記のエラーが出てしまった。

 An invalid XML character (Unicode: 0x8) was found in the value of attribute "inputValue" and element is "gs:cell"

 結論から言うと、記事タイトルの先頭にバックスペースが紛れ込んでたレコードが一部あり、これが原因でエラーが出ていた(原因解明にTDのサポートが大変参考になった!)。

修正部分抜粋↓

) SELECT
--  yesterday.title, --記事タイトルをそのままセレクトすると\bが紛れているのでエラー
--  ltrim(yesterday.title), --空白除去。当初は先頭文字の空白が原因かと考えたが違っていた
  regexp_replace(yesterday.title, '[\b]') as title, --これで成功


メモ
  • regexp_replace(column, '[\b]') --バックスペースを除去
  • regexp_like(column,'^[\b]') --バックスペースがあるレコードを特定


本件で参考になるサイト


てか、そもそも何で記事タイトルにバックスペースが紛れ込んでいるんだろう??


0 件のコメント :

コメントを投稿