質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Q&A

解決済

2回答

743閲覧

MySQLで正規表現を区切り文字にすることは可能か?

summerboot

総合スコア18

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

0グッド

0クリップ

投稿2021/04/21 10:55

使用するDB:MySQL

正規表現と合致する最後の文字で区切って、出力結果を加工したいと思っています。
字数や区切り文字が変わる為、substringなどが上手く利用できず困っています。

<サンプル>
ここでは正規表現で使用したい文字=数字 とする

加工前加工後
あああ1いいい2うううううう
えええ5おおおおおおおおおおおおおお
か6き7くくくくくくくく

このような事は実現可能でしょうか?
「そもそもそんなテーブルの作り方するな」という点については、環境上変更不可能な為無しでお願いしたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

seastar3

2021/04/21 11:45

プログラム言語で1レコードずつ正規表現の置換の関数を使わなければならないとしたら、何の言語が操作できますか?
guest

回答2

0

ベストアンサー

MySQLのバージョンが8以降であれば、REGEXP_REPLACEが利用できます。

https://dev.mysql.com/doc/refman/8.0/en/regexp.html#function_regexp-replace

「サンプル」にあるようなことをしたいのであれば、以下のようにREGEXP_REPLACEを利用します。

SQL

1SELECT REGEXP_REPLACE('あああ1いいい2ううう', '^.*[0-9]', '');

投稿2021/04/21 14:43

neko_the_shadow

総合スコア2273

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

mysql - MySQL置換コマンドで正規表現を使用する方法?の記事のように、MySQLだけでは正規表現による置換は無理のようです。
プログラム言語により、逐次正規表現による置換をする必要があるようです。

投稿2021/04/21 11:58

seastar3

総合スコア2285

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問