在两个字符之间拆分

时间:2016-01-16 20:49:31

标签: ruby-on-rails

我有这个网址,正在传递给javascript。我现在就这样了

var Link ='<%= @ car.link.split('&')[1]%>'; 链接有Id=63546&hjk我想让这些号码只传入票证。

剩下63546。我怎么会这样呢?它必须介于这两者之间。完全Id=&

由于

2 个答案:

答案 0 :(得分:0)

这种拆分需要在rails侧还是在javascript端完成。在使用正则表达式的两侧,可以拆分字符串以仅获取数字

在红宝石方面

s ="Id=63546&hjk"
s[/\d+/].to_i
=> 63546

在Javascript方面

var regex = /\d+/g;
var string = "Id=63546&hjk";
var matches = string.match(regex);
document.write(matches);

答案 1 :(得分:0)

不是尝试用正则表达式拆分uri,而是使用标准库和rails为你操作这些东西的函数:

Rack::Utils.parse_query(URI.parse(@car.link).query)['Id']

解析URI,提取查询字符串,使用rack将其转换为键值对的哈希值,然后提取名为Id的哈希值。它不依赖于Id恰好是Url中的某个位置或类似的位置。