- rokujyouhitoma
- 30927
- 6
- 95
- 18
@methane @__gfx__ 前半に関しては、確かにリテラルとして埋め込みの場合はエスケープしなくて良い(つまり埋め込み変数中に正規表現制御文字が含まれる場合は、リテラルじゃない方法で正規表現使ってね)の方が便利であり、何の言語かは知りませんが一般的にはそっちなのかも?
2013-12-15 23:26:42@__gfx__ 正規表現リテラルがサーバーサイドで使われる条件なのに、JavaScript の正規表現リテラルならなくてもいい、ということは、JavaScript はサーバーサイドで使われてない? node.js は十分使われてると思うのですが。
2013-12-15 23:30:40@methane それは議論を混ぜっ返しすぎでは?ぼくはPerlやRubyのような正規表現構文がすばらしいといっているのであって、JSについてはそもそも議論しようとしてません。
2013-12-15 23:39:32@__gfx__ 僕は正規表現リテラルの存在が、サーバーサイド言語として使える条件ではないということを議論していたつもりです。
2013-12-15 23:45:16@__gfx__ はい。なので少なくとも、静的コンパイルを前提とするGoに変数埋め込みを可能なレベルの正規表現を要求するのはバランスが悪いと思います
2013-12-15 23:45:42if re.match("http://", s): elif re.match("https://", s): で case when + 正規表現リテラルの大半のケースはカバーできるけど、 if の中だと match object 取れないので、その場合は1行増える。
2013-12-15 23:49:03@kazuho golangは変数展開する文字列リテラルもないのでそれはもともとあまり望んでないです。とはいえJavaとちがってraw string literalがあるのですでに少し使いやすいですね。
2013-12-15 23:51:37@__gfx__ @methane 正規表現が便利な例としては、たとえばメールアドレスのチェック等を検討すべきかと思います http://t.co/XkcUKp6h1t
2013-12-15 23:55:19@__gfx__ それは記述が短くなる・理解しやすくなるといったことでしょうか。それともそれがないと機能の実現が困難になるということでしょうか。
2013-12-15 23:56:54@kazuho @__gfx__ そうですね。そういった一部のライブラリ内では正規表現を使います。問題は、リテラルがあるべきかどうか、アプリケーションの至る所に正規表現を使った処理が散らばってるのがいいかどうかだと思います。
2013-12-16 00:05:14