Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 16:59

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



String Split

Discussion on String Split within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1

 
elite*gold: 556
Join Date: Aug 2006
Posts: 502
Received Thanks: 404
String Split

hallo

wie kann ich am besten so einen string splitten?
"ababaaazzzzzzzzzzzzzzzzzzzzzzzzzzzacacaaazzzzzzzz zzzzzzzzzzzzzzzzzzzadadaaazzzzzzzzzzzzzzzzzzzzzzzz zz"


"a" ist immer gleich
"z" sind verschiedene Zeichen
uragan is offline  
Old 01/07/2012, 02:10   #2
 
elite*gold: 42
Join Date: Jun 2008
Posts: 5,425
Received Thanks: 1,888
Die Frage ist, wo du ihn splitten willst.
MoepMeep is offline  
Old 01/07/2012, 02:17   #3
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
am besten geht das ganze über die regEx funktionen.

hier ein beispiel:
Code:
$string = 'ababaaa wordz1 acacaaa wordz2 adadaaa wordz3'
$split = StringRegExp($string, '(?:a.{1}a.{1}aaa)?(?s)(.+?)(?:a.{1}a.{1}aaa|\z)', 3)
For $i=0 To UBound($split)-1
	ConsoleWrite($split[$i]&@CRLF)
Next
lolkop is offline  
Old 01/07/2012, 02:35   #4

 
elite*gold: 556
Join Date: Aug 2006
Posts: 502
Received Thanks: 404
lolkop , das ist super
nun wird leider nur wordz1 , wordz2,.. angezeigt

es ist aber wichtig dass die delimiter auch angezeigt werden

ababaaawordz1
acacaaawordz2
adadaaawordz3

ist dies möglich?
uragan is offline  
Old 01/07/2012, 03:32   #5
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
stringsplit beinhaltet auch nicht die delimiter.

willst du die auch mit in deinem ergebnis haben, und hast keinerlei weitere informationen über den string, musst du diese wohl mit einer extra regex operation auslesen, und zum string hinzufügen.

Edit:
hier ein beispiel dafür:
Code:
$string = 'ababaaa wordz1 acacaaa wordz2 adadaaa wordz3 aeaeaaa wordz4 afafaaa wordz5 agagaaa wordz6 ahahaaa'
$split = StringRegExpSplit($string, 'a.{1}a.{1}aaa')
$delimiter = StringRegExp($string, '(a.{1}a.{1}aaa)', 3)
For $i=0 To UBound($split)-1
	ConsoleWrite($delimiter[$i]&$split[$i]&@CRLF)
Next

Func StringRegExpSplit($string, $delimiter)
	Local $split = StringRegExp($string, '(?:'&$delimiter&')?(?s)(.+?)(?:'&$delimiter&'|\z)', 3)
	Return $split
EndFunc
lolkop is offline  
Thanks
1 User
Old 01/07/2012, 13:03   #6

 
elite*gold: 556
Join Date: Aug 2006
Posts: 502
Received Thanks: 404
sehr nett, danke, kann geclosed werden

ach doch nicht ganz,

lolkop , kann man dort noch eine Abfrage machen, damit nur gesucht wird
Quote:
ababaaa | acacaaa | axacaaa
und nicht
Quote:
aaabaaa
oder
Quote:
abaaaaa
also es darf an der 2ten stelle und an der 4 stelle kein "a" sein



EDIT:

habs
Quote:
StringRegExp($string, '(a[^a]{1}a[^a]{1}aaa)', 3)
uragan is offline  
Reply


Similar Threads Similar Threads
[VB08]String in String mit mehreren Funden
08/08/2011 - .NET Languages - 6 Replies
Hey, bin gerade auf ein Problem gestoßen, an dem ich mir seit 3 Stunden die Zähne ausbeiße. Ich will eine Funktion schreiben, die der _StringBetween Funktion von AutoIt gleich ist. _StringBetween gibt in einem Array alle Strings zwischen zwei SubStrings und dem ganzen String aus. Die Ausgabe bei _StringBetween("<h1>test1</h1>&l t;h1>test2</h1>", "<h1>", "</h1>") wäre also idealer Weiße ein Array (x = "test1", x = "test2")... da man in VB08 kein Array returnen kann, komme ich aber einfach...
C++ split string + dll injecting
08/07/2011 - C/C++ - 1 Replies
Hallo, Ich habe meine DLL injekted, doch leider wird crashed sofort die anwendung. Was kann den hier falsch laufen? void split(vector<string> &result, string str, char delim ) { string tmp;
gc split up
12/02/2010 - Grand Chase - 6 Replies
im confused i heard somethign about gc spliting up like with the chars and all but i dnt understand it how does it work and all ? its not comming anytime soon like in a month or so but hard to picture it
[C++] string zwischen string
11/11/2010 - C/C++ - 6 Replies
tag gibts direkt ne funktion, mit der man einen passenden string zwischen dem string suchen kann? also meine net .find() sondern sowas ähnliches, die in diesem beispiel "mein string sucht" Bsp: "<span id=\"lalala\">"+string mein_string+"</span>" understanden? :-)
Server Split
06/14/2006 - Conquer Online 2 - 5 Replies
Hey guys, Sunshine server is splitting and Just wondering what people think/know about splits, is it worth changing servers and how many people usually go in the split. The main reason I made this thread was to tell you guys what im doing, I have 24 miner accounts, 2 friend accounts, and my main. Well I submitted them all to goto the new server and I'm just seeing how many of them make it. Just looking for some comments about this, tell me what you think in somewhat of a civilized manner....



All times are GMT +2. The time now is 16:59.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.