On Thu, Aug 1, 2013 at 1:58 PM, Ammar Ali <ammarabuali / gmail.com> wrote:
> You can create the string first (without slashes), then create the regexp
> using the string, finally call gsub as usual, passing the regexp value.
>
> For example:
>
>   VALUE pattern = rb_str_new2("some-pattern");
>  VALUE regex = rb_reg_new_str(pattern, 0);
>
> Hope that helps,
> Ammar
>
>

Perfect, thanks!
--
Matt

> On Aug 1, 2013, at 1:03 AM, Matt Rogers <mattrogers / sbcglobal.net> wrote:
>
> Hi,
>
> I've got some code in C that makes a call to String#gsub via rb_funcall
>
> VALUE pattern = rb_str_new2(" ");
> VALUE heading = rb_funcall(str, rb_intern("gsub"), 2, pattern,
> rb_str_new2("-"));
>
> I'd like to get pattern to be a Regexp object so that I can replace
> repeating whitespace, but the various things I've tried so far haven't
> worked. I've tried:
>
> VALUE pattern = rb_str_new2("/\\s\\+/");
>
> and
>
> VALUE pattern = RREGEXP(rb_str_new2("\\s\\+"))'
>
>
> Would someone out there be able to help me out with this?
>
> Thanks
> --
> Matt
>
>