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

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

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

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Q&A

解決済

1回答

3066閲覧

rubyの長い正規表現のコードを改行したい

tos-miyake

総合スコア23

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

0グッド

0クリップ

投稿2016/08/30 04:41

タイトルの通り、rubyで長い正規表現を書く時に適度に改行して、インデントも揃えたい

ruby

1irb(main):016:0> hoge = /(...??[都道府県])((?:旭川|伊達\ 2irb(main):017:0/ |石狩|盛岡|奥州|田村))/ 3=> /(...??[都道府県])((?:旭川|伊達 |石狩|盛岡|奥州|田村))/

↑スペースが入ってうまく改行できない

↓の文字列のように改行できないのか

ruby

1irb(main):018:0> hoge = "fugofugofugo"\ 2irb(main):019:0* "hogehogehoge" 3=> "fugofugofugohogehogehoge"

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

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

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

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

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

guest

回答1

0

ベストアンサー

正規表現のオプションにxというものがあって、途中に入った改行やスペースを無視してくれます(るりま)。

ruby

1hoge = /(...??[都道府県])((?:旭川|伊達 2 |石狩|盛岡|奥州|田村))/x

投稿2016/08/30 05:08

maisumakun

総合スコア145183

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

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

tos-miyake

2016/08/30 05:14 編集

ありがとうございます。 表示がおかしいのですが、私の環境だからですかね? ```ruby irb(main):008:0> hoge = /(...??[都道府県])((?:旭川|伊達 irb(main):009:0/ |盛岡|奥州|田村))/x => /(...??[\u90FD\u9053\u5E9C\u770C])((?:\u65ED\u5DDD|\u4F0A\u9054 |\u76DB\u5CA1|\u5965\u5DDE|\u7530\u6751))/x irb(main):010:0> hoge => /(...??[\u90FD\u9053\u5E9C\u770C])((?:\u65ED\u5DDD|\u4F0A\u9054 |\u76DB\u5CA1|\u5965\u5DDE|\u7530\u6751))/x irb(main):011:0> hoge = /(...??[都道府県])((?:旭川|伊達|盛岡|欧州|田村))/ => /(...??[都道府県])((?:旭川|伊達|盛岡|欧州|田村))/ irb(main):012:0> hoge => /(...??[都道府県])((?:旭川|伊達|盛岡|欧州|田村))/ ```
tos-miyake

2016/08/30 05:17

```ruby irb(main):022:0> hoge = /伊 irb(main):023:0/ 達/x => /\u4F0A \u9054/x irb(main):024:0> hoge =~ "伊達" => 0 ``` ちゃんと動いているっぽいですね。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問