What you are asking is to parse a MarkupExtension. I could not find WPF's implementation directly (it's contained somewhere in the XamlReader.Parse call chain).
After some googling, it seems there is no ready made solution available to do this. However, if you have some experience with writing parsers you could roll your own. The specification for parsing a MarkupExtension is given on MSDN.
As a workaround, you could fake a control where you put the binding on:
string myBindingExpression = "{Binding MyProperty}";
var test = "<TextBlock xmlns=\"http://schemas.microsoft.com/winfx/2006/xaml/presentation\" Text=\""
+ myBindingExpression + "\" />";
var result = XamlReader.Parse(test) as TextBlock;
var bindingExpression = result.GetBindingExpression(TextBlock.TextProperty);
Binding binding = bindingExpression.ParentBinding
This creates a TextBlock with the binding as the Text property. It will give you the binding object with the properties set according to the binding expression.
You can then apply the binding wherever.
Remember though, for your more complex example with the xmlns prefix, you need to include the xmlns:views="..." in the fake TextBlock, otherwise it will not know what to do with the prefix.
Example: <TextBlock xmlns:views="..." xmlns="..." Text="{Binding MyProperty}" />
Bindingconstructor that takes a stringBindingbefore, so the best I can personally do is just refer you to theBindingclass, which holds all the properties you need - in fact it's the same binding that's used in XAML. I don't know if you can just pass it a predefined string somehow, or if you'd have to parse the string first (which would be counterproductive).