use strict;
my $str = 'QString CurrentVideoSource';
my $regex = qr/(?'type'.*?) (?'name'.*)/p;
my $subst = 'Q_PROPERTY(\\{type} \\{name} READ \\{name} WRITE set\\{name} NOTIFY \\{name}Changed)\\n\\n\\{type} \\{name}() const\\n{ return m_\\{name}; }\\n\\nvoid set\\{name}(\\{type} \\{name})\\n{\\n\\tif(this->m_\\{name} != \\{name})\\n\\t{\\n\\t\\tthis->m_\\{name} = \\{name};\\n\\t\\temit \\{name}Changed();\\n\\t}\\n}\\n\\nvoid \\{name}Changed();\\n\\n\\{type} m_\\{name};';
my $result = $str =~ s/$regex/$subst/r;
print "The result of the substitution is' $result\n";
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 Perl, please visit: http://perldoc.perl.org/perlre.html