# File lib/rake.rb, line 121
121:     def pathmap_replace(patterns, &block)
122:       result = self
123:       patterns.split(';').each do |pair|
124:         pattern, replacement = pair.split(',')
125:         pattern = Regexp.new(pattern)
126:         if replacement == '*' && block_given?
127:           result = result.sub(pattern, &block)
128:         elsif replacement
129:           result = result.sub(pattern, replacement)
130:         else
131:           result = result.sub(pattern, '')
132:         end
133:       end
134:       result
135:     end