スリ飯屋Malankaのフリーエンジニアな日々

IT実務未経験から約1年、東京でフリーランスのRuby on Railsエンジニアに転職。約2年半、大阪中崎町でスリランカカレーの間借りしてました。フリーランスエンジニアになるためのノウハウ、スリランカの事を発信していきます。

【正規表現】Rubyで、文字列がURLかどうかをチェックする

【正規表現】Rubyで、文字列がURLかどうかをチェックする


こんにちは、mah(@RailsRubyMah6h)です。


このブログでは、

僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、

ノウハウなどを書いていきます。


今回は、

  • 【正規表現】Rubyで、文字列がURLかどうかをチェックする

です。


【正規表現】Rubyで、文字列がURLかどうかをチェックする





結論


URI.regexp.match(検証したい文字列).nil?

で出来ます。


参考リンク


module URI (Ruby 2.7.0 リファレンスマニュアル)

URI.regexp (Ruby 2.7.0 リファレンスマニュアル)

Regexp#match (Ruby 2.7.0 リファレンスマニュアル)

Object#nil? (Ruby 2.7.0 リファレンスマニュアル)


解説


URI.regexp.match(検証したい文字列) を使います。


例: 対象の文字列がURLの場合


MatchDataオブジェクトが返ります。

URI.regexp.match('https://www.malanka.tech')
=> #<MatchData
 "https://www.malanka.tech"
 1:"https"
 2:nil
 3:nil
 4:"www.malanka.tech"
 5:nil
 6:nil
 7:nil
 8:nil
 9:nil>


例: 対象の文字列がURLでない場合


nilが返ります。

URI.regexp.match('URLではありません')
=> nil


nilが返る性質を利用して、冒頭の、

URI.regexp.match(検証したい文字列).nil?

で論理値を返すことで、

対象の文字列がURLかどうかをチェックすることが出来ます。


検証


Railsコンソールで検証します。

# URLなのでMatchDataオブジェクトを返す。よって .nil? はfalseを返す
> URI.regexp.match('https://www.malanka.tech').nil?
=> false

# URLではないのでマッチせずにnilを返す。よって .nil? はtrueを返す
> URI.regexp.match('URLではありません').nil?
=> true




以上、

  • Rubyで正規表現を使って、文字列がURLかどうかをチェックする方法

でした。




あわせて読みたい


www.malanka.tech


www.malanka.tech


www.malanka.tech


www.malanka.tech


www.malanka.tech


www.malanka.tech




フリーランスエンジニアになりたい方はこちら


フォスターフリーランスという、

フリーランス専門エージェントを使うのがおすすめです。


f:id:mah666hhh:20200615083445p:plain


自分もフォスターフリーランスを使って、

フリーランスエンジニアとしてのキャリアをスタートさせました。


フォスターフリーランスを使うと、

自分の代わりに、

プロの営業さんが案件を探してくれます。


最初の内は、

自分で営業なんてとても出来ないので、

非常にありがたかったです。


しかも無料で利用できる。


話を聞くだけでもOKなので、

ぜひ利用してみてください。


フォスターフリーランス【案件保有数5000件以上。業界20年の超老舗】

無料でフォスターフリーランスに登録


下記の記事で、

フォスターフリーランスの特徴について解説しています。


www.malanka.tech




Rubyを学習するならこちら


Udemy という動画教材です。


はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう




なんとUdemy は、

60%OFFのセールをやっている時もあります。


こまめにチェックして、

スキルアップを図りましょう★




また、

Ruby関連の過去記事は下記にありますので、

合わせてチェックしてみてください◎


Ruby カテゴリーの記事一覧 - スリ飯屋Malankaのフリーエンジニアな日々

www.malanka.tech




フリーランスエンジニアのデメリットはこちら


今回のコロナで、

参画していたプロジェクトが終了し、被害を受けました。


そこで、

コロナ被害を受けて感じている、

フリーランスエンジニアのデメリット【6つ】について、

noteを書きました。


下記に当てはまる人に、参考になると思います。

現在、フリーランスエンジニアとして生きている人

今からフリーランスエンジニアになろうとしている人

フリーランスエンジニアだが、コロナの影響で仕事が途絶えた人


note.com




最後までお読み頂きありがとうございました★

もしよかったらTwiiterのフォローもお願いします★