nyke0 Posted August 27, 2014 Share Posted August 27, 2014 $string = "Hello AutoItScript.com, I'm a new member here, and I wanna split this string after every 30 characters. But I don't have any idea how I make this, so please help me." Link to comment Share on other sites More sharing options...
kylomas Posted August 27, 2014 Share Posted August 27, 2014 (edited) nyke0, One possibility... #include <array.au3> local $sString = "Hello AutoItScript.com, I'm a new member here, and I wanna split this string after every 30 characters. But I don't have any idea how I make this, so please help me." local $aString = stringregexp($sString,'(?s)(.{30}|.{1,29}$)',3) _arraydisplay($aString) kylomas edit: corrected SRE to pick up last chunk Edited August 27, 2014 by kylomas Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill Link to comment Share on other sites More sharing options...
Luigi Posted August 27, 2014 Share Posted August 27, 2014 (edited) Something like this... @kylomas: not funny... is more thin and more faster... 8/ #include-once #include <Array.au3> Local $string = "Bacon ipsum dolor sit amet chicken tri-tip flank filet mignon. Kielbasa jowl bacon brisket strip steak cow. Pork loin chuck hamburger swine bacon. Drumstick cow jowl short loin sausage strip steak. Pork shoulder beef short loin bresaola ball tip drumstick swine tail andouille prosciutto spare ribs. Doner turkey andouille porchetta, salami beef drumstick capicola venison ribeye boudin flank bresaola ham. Flank landjaeger frankfurter spare ribs, strip steak filet mignon ground round cow bacon." Local $aSplit = _SplitString($string, 30) _ArrayDisplay($aSplit, "$aSplit") Func _SplitString($vInput = "", $iEach = 30) Local $aAnswer[1], $sPart Do $sPart = StringLeft($vInput, $iEach) _ArrayAdd($aAnswer, $sPart) $vInput = StringTrimLeft($vInput, $iEach) Until StringLen($vInput) <= $iEach If $vInput Then _ArrayAdd($aAnswer, $vInput) _ArrayDelete($aAnswer, 0) Return $aAnswer EndFunc ;==>_SplitString Edited August 27, 2014 by Detefon Visit my repository Link to comment Share on other sites More sharing options...
guinness Posted August 27, 2014 Share Posted August 27, 2014 (edited) Detefon, Declaring variables in a loop is going to affect execution time. Edited August 31, 2014 by guinness Luigi 1 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...
BugFix Posted August 27, 2014 Share Posted August 27, 2014 @nyke0: It's not a good manner, to make crossposts (same post in 2 forums in 6 minutes). Best Regards BugFix Link to comment Share on other sites More sharing options...
Solution mikell Posted August 27, 2014 Solution Share Posted August 27, 2014 Isn't this a word wrap question ? Local $sString = "Hello AutoItScript.com, I'm a new member here, and I wanna split this string after every 30 characters. But I don't have any idea how I make this, so please help me." $res = StringRegExpReplace($sString, ".{1,30}(\h|$)\K", @crlf) Msgbox(0,"", $res) Link to comment Share on other sites More sharing options...
kylomas Posted August 27, 2014 Share Posted August 27, 2014 Isn't this a word wrap question ? Apparently since the OP likes your answer...not obvious in the op... Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill Link to comment Share on other sites More sharing options...
Moderators Melba23 Posted August 27, 2014 Moderators Share Posted August 27, 2014 nyke0,If you are indeed looking to size strings to fit in controls, take a look at my StringSize UDF - the link is in my sig. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area Link to comment Share on other sites More sharing options...
mikell Posted August 27, 2014 Share Posted August 27, 2014 kylomas, I totally agree... but I'm sure you already know that unfortunately we often have to guess about what an OP really wants - especially when regex are concerned Link to comment Share on other sites More sharing options...
kylomas Posted August 27, 2014 Share Posted August 27, 2014 @mikell - Of course, just disapointed...thought I actually nailed one of these SRE bitches... Forum Rules Procedure for posting code "I like pigs. Dogs look up to us. Cats look down on us. Pigs treat us as equals." - Sir Winston Churchill Link to comment Share on other sites More sharing options...
mikell Posted August 27, 2014 Share Posted August 27, 2014 You did !! The rest is matter of precision in the asked question 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