Ruby 合并两个正则表达式?

Ruby 合并两个正则表达式?,ruby,regex,Ruby,Regex,我有两个正则表达式,每个正则表达式都用于剥离开始和结束参数,但我正在寻找一种方法来组合它们 捕获开始: ^[a][(] 捕获结束: [\,]\d{1,3}\,[n][u][l][l][)] 我尝试使用&&操作符组合它们,但没有得到任何结果 这是一个例子,其中一个对 除了删除我在评论中提到的请求url之外,如果它在一行上,您还可以使用它 ^\w+\(|[^}]+$ 这将匹配开始和结束模式,并捕获以下各项之间的所有内容: /^a\((.*),\d{1,3},null\)/.match(s)[

我有两个正则表达式,每个正则表达式都用于剥离开始和结束参数,但我正在寻找一种方法来组合它们

捕获开始:

^[a][(] 
捕获结束:

[\,]\d{1,3}\,[n][u][l][l][)]
我尝试使用
&&
操作符组合它们,但没有得到任何结果


这是一个例子,其中一个对

除了删除我在评论中提到的请求url之外,如果它在一行上,您还可以使用它

^\w+\(|[^}]+$

这将匹配开始和结束模式,并捕获以下各项之间的所有内容:

/^a\((.*),\d{1,3},null\)/.match(s)[1]
下面是如何使用它来剥离:(我在您的Rubular示例中编辑了巨大的字符串)


... 一个正则表达式,带有围绕实际JSON的捕获组。也就是说,您是否确定正则表达式是实现这一点的最佳方法,例如,如果有换行符,只需删除第一行和最后一行即可。JSONP响应将在一行中返回所有内容,如红宝石示例所示。在查询url上删除“=?”是否应该在没有JSONP的情况下返回?您过度使用了字符类:
[n][u][l]
null
相同,但请注意,括号需要用\来转义,即
[(]
\(
相同。我猜也是这个问题;如果您知道回调格式,您可能只需要在开头和结尾去掉n个字符,例如
{
的第一个索引和
}
的rindex。
irb> s = 'a({"query":"love",...},200,null)'
=> "a({\"query\":\"love\",...},200,null)"

irb> /^a\((.*),\d{1,3},null\)/.match(s)[1]
=> "{\"query\":\"love\",...}"

irb> puts /^a\((.*),\d{1,3},null\)/.match(s)[1]
{"query":"love",...}