5

文字列にスペースしかない場合、最終的な文字列が''になるように、すべてのスペースを削除するSQLクエリを作成しようとしています。

私はこのコードを試しましたが、どうやらそれは複数のスペースで機能していません:

regexp_replace(:P14_search_text, '( ){1,}', '')

存在する:P14_search_text変更したい文字列。

何か助けはありますか?

4

5 に答える 5

7

どうですか:

regexp_replace(:P14_search_text, '[[:space:]]*', '');
于 2012-12-12T18:17:55.477 に答える
5

これを試して:

     Select Replace(:P14_search_text, ' ', '');
于 2012-12-12T18:20:52.550 に答える
3

これがお役に立てば幸いです。

SELECT REGEXP_REPLACE(' Any  String ','( ){1,}','') "REGEXP_REPLACE"  FROM DUAL;
SELECT REGEXP_REPLACE('  ','( ){1,}','') "REGEXP_REPLACE"  FROM DUAL;
于 2012-12-12T18:27:45.120 に答える
3

@Donが提案したのと同じ方法を試しましたが、Oracle10xeで機能します。

select replace('     lkjds  d   s   adkj      ', ' ', '') from dual

結果

lkjdsdsadkj
于 2012-12-13T17:42:48.573 に答える
2

次のクエリは、Oracleで機能します。

select
    :tst_val AS INPUT,
    regexp_replace(:tst_val, '[[:space:]]*', '') AS MODIFIED
from
    dual

このクエリがうまくいかない場合は、どのような結果が得られているかを教えてください。

于 2012-12-12T18:27:48.600 に答える