www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Getting what came *before* the results of a find call

reply "Mark Isaacson" <turck11 hotmail.com> writes:
What's the idiomatic way of getting everything *before* the 
results of a call to find?

assert("hello world".find(" world").what_goes_here??? == "hello");

In an article Andrei wrote a few years ago 
(http://www.informit.com/articles/article.aspx…) he mentioned a 
function like this with the name "until", but I can't find it or 
its replacement in Phobos.
Feb 27 2015
next sibling parent "Mark Isaacson" <turck11 hotmail.com> writes:
Not that it's super important, but the link didn't copy well, so 
here's that: 
http://www.informit.com/articles/article.aspx?p=1407357&seqNum=12
Feb 27 2015
prev sibling parent reply =?UTF-8?B?QWxpIMOHZWhyZWxp?= <acehreli yahoo.com> writes:
On 02/27/2015 02:29 PM, Mark Isaacson wrote:
 What's the idiomatic way of getting everything *before* the results of a
 call to find?

 assert("hello world".find(" world").what_goes_here??? == "hello");

 In an article Andrei wrote a few years ago
 (http://www.informit.com/articles/article.aspx…) he mentioned a function
 like this with the name "until", but I can't find it or its replacement
 in Phobos.
findSplit and friends in std.algorithm: import std.algorithm; void main() { assert("hello world".findSplit(" world")[0] == "hello"); } Ali
Feb 27 2015
next sibling parent "Mark Isaacson" <turck11 hotmail.com> writes:
Ahhh right - forgot about that. Thanks!
Feb 27 2015
prev sibling parent Jonathan M Davis via Digitalmars-d-learn writes:
On Friday, February 27, 2015 14:42:17 Ali Çehreli via Digitalmars-d-learn
wrote:
 On 02/27/2015 02:29 PM, Mark Isaacson wrote:
 What's the idiomatic way of getting everything *before* the results of a
 call to find?

 assert("hello world".find(" world").what_goes_here??? == "hello");

 In an article Andrei wrote a few years ago
 (http://www.informit.com/articles/article.aspx…) he mentioned a function
 like this with the name "until", but I can't find it or its replacement
 in Phobos.
findSplit and friends in std.algorithm: import std.algorithm; void main() { assert("hello world".findSplit(" world")[0] == "hello"); }
There's also std.algorithm.until if all you want is what's before, whereas findSplit gives you both what's before and after. - Jonathan M Davis
Feb 27 2015