2009-04-16 2 views

ответ

0

Попробуйте эту модель:

/http:\/\/example\.com\/news\/(\d+)-.+\.html/ 

Итак:

match = /http:\/\/example\.com\/news\/(\d+)-.+\.html/.match("http://example.com/news/3226-some-post-title.html") 
puts match[1] 
2

Вы можете просто использовать:

/\/(\d+)-(.*)\.html$/ 

Это будет захватывать цифры (\ d) после того, как «/» и поставить цифры в первой переменной, когда он находит их.

Отличное место для проверки регулярного выражения http://rubular.com/.

+0

вам нужно бежать, что последний . –

+0

ах спасибо. хороший глаз. – vrish88

1

Вы хотите:

/http:\/\/example.com\/news\/(\d+)-.+\.html/ 

\ д любая цифра. Кроме того, на следующий сайт очень полезно для регулярных выражений в Ruby:

http://www.rubular.com

1
"http://example.com/news/3226-some-post-title.html".split("/").last.to_i 
Смежные вопросы