digitalmars.D.learn - Extract sub string from a string
- Vino (10/10) Nov 09 2020 Hi All,
- k2aj (8/18) Nov 09 2020 Strings in D are actually immutable arrays of chars, so you can
- =?UTF-8?Q?Ali_=c3=87ehreli?= (15/17) Nov 09 2020 If those concatenations with the ~ operators prove to be costly at
- Vino (3/21) Nov 09 2020 Hi Both,
- Ferhat =?UTF-8?B?S3VydHVsbXXFnw==?= (3/21) Nov 09 2020 I am responding to this just for my personal records. I wish we
- =?UTF-8?B?0JLQuNGC0LDQu9C40Lkg0KTQsNC0?= =?UTF-8?B?0LXQtdCy?= (15/25) Nov 09 2020 Some like this:
Hi All, Request your help on how to extract sub string from a string, below is an example in PHP, need your help on how to do the same in D. $text = "welcome2worldinfo"; $hg = strtoupper(substr($text , 0, 7).'-'.substr($text, 7, 1).'-'.substr($text, 8, 5)); print_r($hg) \\ Output : WELCOME-2-WORLD From, Vino.B
Nov 09 2020
On Monday, 9 November 2020 at 16:00:28 UTC, Vino wrote:Hi All, Request your help on how to extract sub string from a string, below is an example in PHP, need your help on how to do the same in D. $text = "welcome2worldinfo"; $hg = strtoupper(substr($text , 0, 7).'-'.substr($text, 7, 1).'-'.substr($text, 8, 5)); print_r($hg) \\ Output : WELCOME-2-WORLD From, Vino.BStrings in D are actually immutable arrays of chars, so you can slice them to get a substring: import std.string : toUpper; string text = "welcome2worldinfo"; string hg = toUpper(text[0..7] ~ "-" ~ text[7..8] ~ "-" ~ text[8..13]); writeln(hg);
Nov 09 2020
On 11/9/20 9:53 AM, k2aj wrote:string text = "welcome2worldinfo"; string hg = toUpper(text[0..7] ~ "-" ~ text[7..8] ~ "-" ~ text[8..13]);If those concatenations with the ~ operators prove to be costly at runtime, the following range expression may be faster because it does not allocate any memory: import std.string; import std.range; import std.algorithm; import std.stdio; void main() { string text = "welcome2worldinfo"; auto hg = chain(text[0..7], only('-'), text[7..8], only('-'), text[8..13]).map!toUpper; writeln(hg); } Ali
Nov 09 2020
On Monday, 9 November 2020 at 18:55:44 UTC, Ali Çehreli wrote:On 11/9/20 9:53 AM, k2aj wrote:Hi Both, Thank you very much, your solution resolved our issue.string text = "welcome2worldinfo"; string hg = toUpper(text[0..7] ~ "-" ~ text[7..8] ~ "-" ~text[8..13]); If those concatenations with the ~ operators prove to be costly at runtime, the following range expression may be faster because it does not allocate any memory: import std.string; import std.range; import std.algorithm; import std.stdio; void main() { string text = "welcome2worldinfo"; auto hg = chain(text[0..7], only('-'), text[7..8], only('-'), text[8..13]).map!toUpper; writeln(hg); } Ali
Nov 09 2020
On Monday, 9 November 2020 at 18:55:44 UTC, Ali Çehreli wrote:On 11/9/20 9:53 AM, k2aj wrote:I am responding to this just for my personal records. I wish we could've a "add to favorites" option here.string text = "welcome2worldinfo"; string hg = toUpper(text[0..7] ~ "-" ~ text[7..8] ~ "-" ~text[8..13]); If those concatenations with the ~ operators prove to be costly at runtime, the following range expression may be faster because it does not allocate any memory: import std.string; import std.range; import std.algorithm; import std.stdio; void main() { string text = "welcome2worldinfo"; auto hg = chain(text[0..7], only('-'), text[7..8], only('-'), text[8..13]).map!toUpper; writeln(hg); } Ali
Nov 09 2020
On Monday, 9 November 2020 at 16:00:28 UTC, Vino wrote:Hi All, Request your help on how to extract sub string from a string, below is an example in PHP, need your help on how to do the same in D. $text = "welcome2worldinfo"; $hg = strtoupper(substr($text , 0, 7).'-'.substr($text, 7, 1).'-'.substr($text, 8, 5)); print_r($hg) \\ Output : WELCOME-2-WORLD From, Vino.BSome like this: substr($text , 0, 7) // --> text[ 0 .. 7 ] substr($text, 7, 1) // --> text[ 7 .. 7+1 ] substr($text, 8, 5) // --> text[ 8 .. 8+5 ] $hg = a . b . c // --> string hg = a ~ b ~ c; strtoupper( s ) // --> s.toUpper print_r($hg) // --> writeln( hg ) And import names: import std.uni : toUpper; import std.stdio : writeln; Help: https://dlang.org/phobos/std_uni.html https://dlang.org/phobos/std_stdio.html https://dlang.org/spec/arrays.html#strings
Nov 09 2020