DateTime.ParseExact mit Wildcards

  • Thread starter Thread starter Torsten Kraus
  • Start date Start date
T

Torsten Kraus

Hallo,

gibt es mit DateTime.ParseExact eine Möglichkeit Wildcards zu verwenden?

Beispiel:
"20071007abcd123100" soll geparst werden, wobei "abcd" beliebige andere
4 Zeichen seien können.

Ich denke also an so etwas wie:
DateTime.ParseExact("20071007abcd123100", "yyyyMMdd????HHmmss", null);

Hat da jemand eine Idee?

danke & ciao
Torsten
 
Sorry for posing german. I selected the wrong group...
So here my question in english:

Is there any possibility to use wildcards with DateTime.ParseExact?

Sample:
How to parse "20071007abcd123100" when "abcd" can be any comination of
4-Letters?
Im looking for something like:
DateTime.ParseExact("20071007abcd123100", "yyyyMMdd????HHmmss", null);

any ideas?

best regards
Torsten
 
How to parse "20071007abcd123100" when "abcd" can be any comination of
4-Letters?
Im looking for something like:
DateTime.ParseExact("20071007abcd123100", "yyyyMMdd????HHmmss", null);

any ideas?

Create a new string from the source string, with characters in wildcard
positions replaced with some character (say, for example, '?'). Then in
the string you provide to ParseExact(), use that replacement character in
the same position where you replaced them in the source string.

For example:

StringBuilder sb = new StringBuilder(strSource);

sb.Remove(8, 4);
sb.Insert(8, "????");

return DateTime.ParseExact(sb.ToString(), "yyyyMMdd????HHmmss", null);

For all I know, there is some better, approved wildcard mechanism that I
obviously don't know about. But the above should work. :)

Pete
 
Good idea. Thanks Pete!

ciao
Torsten

Peter said:
Create a new string from the source string, with characters in wildcard
positions replaced with some character (say, for example, '?'). Then in
the string you provide to ParseExact(), use that replacement character
in the same position where you replaced them in the source string.

For example:

StringBuilder sb = new StringBuilder(strSource);

sb.Remove(8, 4);
sb.Insert(8, "????");

return DateTime.ParseExact(sb.ToString(), "yyyyMMdd????HHmmss", null);

For all I know, there is some better, approved wildcard mechanism that I
obviously don't know about. But the above should work. :)

Pete
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Back
Top