Ruby 请教 ruby 的正则表达式可以换行吗

kaka · 2013年04月13日 · 最后由 ylnam 回复于 2013年04月13日 · 3159 次阅读

如果一行的情况下是可以匹配的

/(?:\s|^)((?:http:\/\/|www.|https:\/\/|ftp:\/\/|\w+-?\.?\w+)\w+-?\.?\w+\.(?:#{suffix})(?:\/\w+-?\.?\w+)*)(?:\s|$)/

但是换行的话就匹配不了

/(?:\s|^)
   ((?:http:\/\/|www.|https:\/\/|ftp:\/\/|\w+-?\.?\w+)
    \w+-?\.?\w+\.(?:#{suffix})
(?:\/\w+-?\.?\w+)*)(?:\s|$)/

大家换行是怎样做的啊...

可以,最后加个 x 参数

/(?:\s|^)
   ((?:http:\/\/|www.|https:\/\/|ftp:\/\/|\w+-?\.?\w+)
    \w+-?\.?\w+\.(?:#{suffix})
(?:\/\w+-?\.?\w+)*)(?:\s|$)/x

#1 楼 @luikore 谢谢了,可以了

没有注意看到这些参数了 /pat/i - Ignore case /pat/m - Treat a newline as a character matched by . /pat/x - Ignore whitespace and comments in the pattern /pat/o - Perform #{} interpolation only once

想问问 ruby 调用本地系统录音的方法?最好有源码,十分谢谢~

需要 登录 后方可回复, 如果你还没有账号请 注册新账号