Tôi làm cách nào để xóa "www", "http: //", "https: //" khỏi chuỗi bằng Ruby?Xóa "www", "http: //" khỏi chuỗi
tôi đã cố gắng này, nhưng nó đã không làm việc:
s.gsub('/(?:http?:\/\/)?(?:www\.)?(.*)\/?$/i', '')
Dưới đây là những gì tôi đang làm trong Rails:
<%= auto_link(job.description) do |url| url.truncate(25).gsub('http://', '') end %>
Url được cắt ngắn, nhưng mục tiêu của tôi là để loại bỏ các đầu các liên kết, chẳng hạn như "www" hoặc "http: //" để liên kết trông giống như "google.com/somepage/d ...", không giống như "http: //google.com/some ..."
[ 'String # sub'] (http://www.ruby-doc.org/core-1.9.3/String .html # method-i-sub-21) –
Tôi đã thử gsub với một số regex mà tôi tìm thấy nhưng không có gì hiệu quả. Ví dụ: s.gsub ('/ (?: http?: \/\ /)? (?: www \.)? (. *) \ /? $/I', '') –
Cái gì to hơn vấn đề bạn đang cố gắng giải quyết? Bạn có muốn chuyển hướng "www.mydomain.com" sang "mydomain.com" không? – CambridgeMike