Rogue5099 Posted June 13, 2011 Share Posted June 13, 2011 I need to convert mm/dd/yyyy to yyyy/mm/dd. I've looked all through the Date.au3 and all of that converts the date from what I need. Is there a simple StringFormat I can do or something? My projects: Inventory / Mp3 Inventory, Computer Stats Link to comment Share on other sites More sharing options...
somdcomputerguy Posted June 13, 2011 Share Posted June 13, 2011 (edited) Use the StringSplit function, with the slash as the delimiter, then rearrange the resulting array elements. Edited June 13, 2011 by somdcomputerguy - Bruce /*somdcomputerguy */ If you change the way you look at things, the things you look at change. Link to comment Share on other sites More sharing options...
smartee Posted June 13, 2011 Share Posted June 13, 2011 Try this: $sDateYYYYMMDD = StringRegExpReplace($sDateMMDDYYYY, '(\d{2})/(\d{2})/(\d{4})', '$3/$1/$2') Link to comment Share on other sites More sharing options...
guinness Posted June 13, 2011 Share Posted June 13, 2011 smartee you got there before me UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018 Link to comment Share on other sites More sharing options...
Rogue5099 Posted June 14, 2011 Author Share Posted June 14, 2011 (edited) Ok, I see the concept but its not working... I also looked stringregexpreplace with the following example. Neither of these put out the Output that it should? Local $sInput = 'some text1 12/31/2009 01:02:03 some text2' & @CRLF & _ 'some text3 02/28/2009 11:22:33 some text4' Local $sOutput = StringRegExpReplace($sInput, '(\d{2})/(\d{2})/(\d{4})', ' $2.$1.$3 ') This is what I am trying to convert: $Date = GUICtrlCreateDate("", 80, 72, 186, 21, $DTS_SHORTDATEFORMAT) $sDateMMDDYYYY = GUICtrlRead($Date) $sDateYYYYMMDD = StringRegExpReplace($sDateMMDDYYYY, '(\d{2})/(\d{2})/(\d{4})', '$3/$1/$2') I know that GUICtrlCreateDate is defaulted to yyyy/mm/dd. Reason I have it set to mm/dd/yyyy is for matching purposes with other docs. I need it in yyyy/mm/dd to do a DateDiff() Edited June 14, 2011 by rogue5099 My projects: Inventory / Mp3 Inventory, Computer Stats Link to comment Share on other sites More sharing options...
smartee Posted June 14, 2011 Share Posted June 14, 2011 hi, Regexp is a usable solution but in this case it is not needed. Try this:#include <DateTimeConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> $Form1 = GUICreate("Demo1", 266, 42) $Date1 = GUICtrlCreateDate("2011/06/14 10:44:4", 8, 8, 121, 25, $WS_TABSTOP) $Button1 = GUICtrlCreateButton("Check", 136, 8, 121, 25) GUISetState(@SW_SHOW) ;Set the format of the DateTime control GUICtrlSendMsg($Date1, 0x1032, 0, "yyyy/MM/dd") While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Button1 MsgBox(64, "Demo1", GUICtrlRead($Date1)) EndSwitch WEnd -smartee Link to comment Share on other sites More sharing options...
somdcomputerguy Posted June 14, 2011 Share Posted June 14, 2011 Does this work for you? $datevar = StringSplit("mm/dd/yyyy", "/") ConsoleWrite($datevar[3] & '/' & $datevar[1] & '/' & $datevar[2] & @LF) - Bruce /*somdcomputerguy */ If you change the way you look at things, the things you look at change. Link to comment Share on other sites More sharing options...
Rogue5099 Posted June 17, 2011 Author Share Posted June 17, 2011 Does this work for you? $datevar = StringSplit("mm/dd/yyyy", "/") ConsoleWrite($datevar[3] & '/' & $datevar[1] & '/' & $datevar[2] & @LF) This is exactly what I could't figure out, I was just having a brain fart! To smartee: Your method works also except it changes the whole format of the Ctrl that I set previously. I just needed to move the year to the end, store it to a variable, and then use it for datediff to calculate time worked. By the way thanks for all the input. Even though I using a simple stringsplit doesn't mean that I won't use the other information later thanks a lot! My projects: Inventory / Mp3 Inventory, Computer Stats Link to comment Share on other sites More sharing options...
somdcomputerguy Posted June 18, 2011 Share Posted June 18, 2011 Glad it works out for you. Good luck with your project. - Bruce /*somdcomputerguy */ If you change the way you look at things, the things you look at change. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now