re = /\/\*.*?\*\/(*SKIP)^|\/\/.*?$(*SKIP)^|'(?>\\?.)*?'(*SKIP)^|"(?>\\?.)*?"/m
str = '$str = "this is something";
$str = "this is {$another}";
$str = "could be {$hello[\'world\']}";
$str = "and $hello[world] another";
$str = "building <div style=\\"width: 100%\\" data-var=\\"{$var}\\"></div>";
$str = \'<elem prop="\' . $var . \'">\';
$str = \'<div class="my-class \' . $my_var_class . \' my-other-class">\';
$str = "\'single quotes in double quotes\'";
$str = \'"double quotes in single quotes"\';
$xml .= " <$schemaPrefix:import location=\\"" . $ii[\'location\'] . \'" namespace="\' . $ns . "\\" />\\n";
// this is it\'s own comment with an apostrophe
$str = "\'single quote\'"; $str = \'"double quote"\';
/* comment\'s apostrophe */ $str = "\'single quote\'"; $str = \'"double quote"\';
/* comment\'s apostrophe */ $str = \'"double quote"\'; $str = "\'single quote\'";
$str = \'"double quote\\\'d apostrophe"\';
$str = "double quote\'d apostrophe"; $str = "\'single quote\'"; $str = \'"double quote"\';
$str = "double quote\'d apostrophe"; $str = \'"double quote"\'; $str = "\'single quote\'";
// this is it"s own comment with a double quote
$str = "\'single quote\'"; $str = \'"double quote"\';
/* comment"s 2 quote */ $str = "\'single quote\'"; $str = \'"double quote"\';
/* comment"s 2 quote */ $str = \'"double quote"\'; $str = "\'single quote\'";
$str = \'"double quote\\\'d apostrophe"\';
$str = "double quote\'d apostrophe"; $str = "\'single quote\'"; $str = \'"double quote"\';
$str = "double quote\'d apostrophe"; $str = \'"double quote"\'; $str = "\'single quote\'";'
# Print the match result
str.scan(re) do |match|
puts match.to_s
end
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Ruby, please visit: http://ruby-doc.org/core-2.2.0/Regexp.html