turbox Posted January 6, 2013 Share Posted January 6, 2013 Hello, Can somebody tell me if there is any function like the StringSplit, but instead of text as pattern to accept regexp? Thank you Link to comment Share on other sites More sharing options...
Developers Jos Posted January 6, 2013 Developers Share Posted January 6, 2013 Tried to open the helpfile and search for regex? You should find info on StringRegExp() Jos SciTE4AutoIt3 Full installer Download page - Beta files Read before posting How to post scriptsource Forum etiquette Forum Rules Live for the present, Dream of the future, Learn from the past. Link to comment Share on other sites More sharing options...
guinness Posted January 6, 2013 Share Posted January 6, 2013 Hello,Can somebody tell me if there is any function like the StringSplit, but instead of text as pattern to accept regexp?Thank youJust out of curiosity what is wrong with StringSplit right now? 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...
turbox Posted January 6, 2013 Author Share Posted January 6, 2013 (edited) $str="a,b,c,d" I want to split using the regexp: (?<!), After the split i want to have: $split={"a,b","c,d"} To jos: As far as i know the StringRegExp only match, it does not split. Thank you Edited January 6, 2013 by vakis Link to comment Share on other sites More sharing options...
jackraymund Posted January 6, 2013 Share Posted January 6, 2013 (edited) $string = stringsplit("a\,b,c\,d",",") $data = "{" $data &= '"' & $string[1] & "," & $string[2] & '"' for $i = 3 to UBound($string) - 1 step +2 $data &= ',"' & $string[$i] & "," & $string[$i +1] & '"' Next $data &= "}" consolewrite($data) i will do that, because i dont understand regexp Edited January 6, 2013 by jackraymund thanks you BrewManNH Link to comment Share on other sites More sharing options...
AZJIO Posted January 7, 2013 Share Posted January 7, 2013 vakis, My other projects or all Link to comment Share on other sites More sharing options...
Malkey Posted January 7, 2013 Share Posted January 7, 2013 $str="a,b,c,d" I want to split using the regexp: (?<!), After the split i want to have: $split={"a,b","c,d"} .... Here are two methods of splitting a string on coma, ",", and not "," into an array of sub-strings. #include <Array.au3>; Used to display arrays only. Local $str = "a\,b,c\,dc,eg\,f,\,h,j\," Local $split = StringRegExpReplace($str, "([^\\])(,)", "\1`~") ;ConsoleWrite($split & @LF) Local $aSplit = StringSplit($split, "`~", 3) _ArrayDisplay($aSplit, "StringSplit") ; or Local $aSplit2 = StringRegExp($str, "(.*?\\,.*?)(?:,)|.+?\\?,?.*?$", 3) _ArrayDisplay($aSplit2, "RegExp Split") Link to comment Share on other sites More sharing options...
turbox Posted January 7, 2013 Author Share Posted January 7, 2013 Ok my friend thank you. 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