2017-10-16 6 views
0

電話番号の列の特殊文字/非数字/隠し文字を置き換える方法については、お手伝いできます。私は電話番号フィールドの特殊文字を置き換えるクエリ

LTRIM(RTRIM(REGEXP_REPLACE(
      PHONE_NBR, 
      '[^[:digit:]][:cntrl:][:alpha:][:graph:][:blank:][:print:][:punct:][:space:]~', 
      ''))) 

が、運を試してみた

、数値以外の値が含まれているいくつかのレコードが残っています。

+0

書式設定では、質問に長い表現が含まれている場合に回答が得られます。正しく処理された値の例と、正しく処理されなかった値の例を示してください。 –

答えて

1

あなたの正規表現は、制御文字、アルファ、グラフ、空白、プリント、区切り、スペース、チルダの順に続く非数字の文字からなる文字列を置き換えるだけです。

数字以外の文字をすべて削除するには、正規表現として'[^[:digit:]]'を使用するだけで済みます。

+0

はい、940374e + 15のような文字はほとんどありません.Ar Drive Rは交換されません。 – Keerthi

+0

@Keerthiはデータ型の問題です。電話を番号として保管しているようにも、ある時点で変換されているようです数。これは文字列として扱われ、科学的表記の変換は避けられます。 – Jasmine

+0

@Keerthi、940374e + 15は電話番号ではありません。 –

関連する問題