Help me to convert String to TimeStamp

I should convert my string field to the TImeStamp.

These is the initial string field:
"Jul 11, 2016 08:56:03.758207000"

Now I'm converting it using the following rule:
"date {
match => ["Origin", "MMM dd, yyyy HH:mm:sssssssss"]
target => "Origin"
timezone => "Europe/Chisinau"

Unfortunately it works only when the date is higher than 9. For example, if I will receive this string "Jul 5, 2016 08:56:03.758207000", the date will not be parsed correctly.

So In I case of
"Jul 11, 2016 08:56:03.758207000"
I should use
MMM dd, yyyy HH:mm:sssssssss
and in case of
"Jul 5, 2016 08:56:03.758207000"
I should use
MMM d, yyyy HH:mm:sssssssss

Can someone give me an advice, how I can combine this 2 mathes?

I don't think the "s" date pattern token supports more than micosecond resolution. Are the last three digits always zero? If so you can just include them in your date pattern. Otherwise you can use a mutate filter's gsub option to remove the last three digits.