問題タブ [regexp-substr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
129 参照

sql - SQL Oracle: Regexp_substr

次の式があります: 15-JUL-16,20-JUL-16,20-JUL-16,30-JUL-16私のコラムの 1 つに。

式から (最初のコンマまでの式)SUBSTR(REGEXP_SUBSTR(base.systemdate, '.+,'), 1, 9)を取得することに成功しました。15-JUL-16

しかし、取得方法がわかりません30-JUL-16(最後のコンマの後の最後の式)。

それを取得するために使用REGEXP_SUBSTRする方法はありますか?そして、私たちはそれに取り組んでいるので。

コンマなしREGEXP_SUBSTRで取得するためだけに使用するきちんとした方法はありますか? 15-JUL-16カンマを取り除くために2番目のSUBSTRを使用しているため、データ形式と互換性があります。

0 投票する
2 に答える
3419 参照

sql - Oracle regexp_substr - 列内のすべての出現箇所を検索して抽出する

私はOracle DBを使用しており、特定のパターンに一致する文字列内のすべての出現を見つけて抽出しようとしています...

3文字、3数字、そしておそらく文字かどうかであるはずです

私はこれを試しました:

ただし、最初に出現したもののみを返します。

使用する

どちらも機能しません

誰にもアイデアはありますか?

編集:

PLSQLファイルから抽出しようとしています。したがって、次のような SQL クエリとほとんど同じです。

0 投票する
2 に答える
4329 参照

oracle - Oracle REGEXP_REPLACE - 複数出現するパターンを部分文字列に置き換える

Oracle でREGEXP_REPLACE関数を使用して、パターンの複数の出現箇所を部分文字列に置き換えることは可能ですか。正規表現の順列&組み合わせを複数回試してみたのですが、なぜかうまくいきませんでした。表面的には実行可能に見えますが、あまり確信が持てません..試してみるためのアイデアや指針. 以下の入出力例

本質的には、固定パターンで以下を達成する必要があります

  1. 文字列の先頭から@DATA:を削除します
  2. 文字列の末尾にある @を削除します
  3. :をスペースに置き換えます
0 投票する
2 に答える
310 参照

oracle - REGEXP_SUBSTR を使用して文字列の一部を抽出する

dbms_errlog.create_error_log を介してエラー ログ テーブルを使用して、DML 操作エラーを一括で処理し、ORA_ERR_MESG$ をクライアントに返します。ただし、エラーコードを無視する必要があるため、ユーザーフレンドリーに見えます。

例: ORA-01400: ("ABC_OWNER"."ABC_PART"."REGION") に NULL を挿入できません

これを「REGION に NULL を挿入できません」に変更する必要があります。

REGEXP_SUBSTR を試して「ORA-」パターンを検索し、抽出を行いましたが、ある程度しか成功しませんでした。これを行う方法についてアドバイスをお願いします。

よろしく。

0 投票する
2 に答える
56 参照

oracle - Oracle 10g で REGEXP_SUPSTR を使用して区切り記号で値を解析する

列 TVL_CD_LIST を含む TVL_DETAIL というテーブルがあります。TVL_CD_LIST 列には 3 つのレコードが含まれています。
TVL_CD_LIST:
M1180_Z6827
K5900_Z6828
I2510

値のみを返すために次のコードを使用しました(アンダースコアを除く):

別々の行で返されることを期待していたのは、
M1180
Z6827
K5900 Z6828
I2510
です。

ただし、I2510 (アンダースコアを含まない元の値) のみが返されます。

私は何を間違っていますか?どんな助けでも大歓迎です。ありがとう!