marselo Posted October 12, 2009 Share Posted October 12, 2009 how to read specific line from a string? Link to comment Share on other sites More sharing options...
water Posted October 12, 2009 Share Posted October 12, 2009 If you mean that you have a string with CRLF in it simply use$aResult = StringSplit($YourString,@CRLF,1)Gives you an array with the number of "lines" in $aResult[0] My UDFs and Tutorials: Spoiler UDFs: Active Directory (NEW 2024-07-28 - Version 1.6.3.0) - Download - General Help & Support - Example Scripts - Wiki ExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example Scripts OutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - Wiki OutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - Download Outlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - Wiki PowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - Wiki Task Scheduler (2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs: Excel - Example Scripts - Wiki Word - Wiki Tutorials: ADO - Wiki WebDriver - Wiki Link to comment Share on other sites More sharing options...
marselo Posted October 12, 2009 Author Share Posted October 12, 2009 Thanks alot Link to comment Share on other sites More sharing options...
Mat Posted October 12, 2009 Share Posted October 12, 2009 (edited) A better method that also returns an array, but does not count blank lines and can work with any line break (@LF, @CR and @CRLF) StringRegExp ($sData, "(?:\s*)?(.+)(?:\n)?", 3) Mat Edit: It does not return the amount of lines in element "0", you will need to use UBound. Edit2: Now ignores leading whitespace on lines. Edited October 12, 2009 by Mat AutoIt Project Listing Link to comment Share on other sites More sharing options...
Mat Posted October 12, 2009 Share Posted October 12, 2009 A much improved version, that returns the line as a string. Func _StringGetLine ($sString, $iLine, $bCountBlank = False) Local $sChar = "+" If $bCountBlank = True Then $sChar = "*" If Not IsInt ($iLine) Then Return SetError (1, 0, "") Return StringRegExpReplace ($sString, "((." & $sChar & "\n){" & $iLine - 1 & "})(." & $sChar & "\n)((." & $sChar & "\n?)+)", "\2") EndFunc ; ==> _StringGetLine Mat AutoIt Project Listing 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