_methods

trait _methods extends _evaluate[String] with _modify[String] with _copy[String] with _transform[String]

String Extension Methods

Extension methods universaly avaialble for type java.lang.String

Source
_methods.scala
trait _transform[String]
trait _copy[String]
trait _modify[String]
trait _evaluate[String]
class java.lang.Object
trait scala.Matchable
class Any

Def

@scala.annotation.targetName("_join")
inline def +(inline v: A | String): String
Inherited from
_modify
Source
_modify.scala
@scala.annotation.targetName("_joinAll")
inline def ++(inline v: ~[A | String]): String
Inherited from
_modify
Source
_modify.scala
@scala.annotation.targetName("char_Stream")
inline def char_~: ~

Source of Chars

Source of Chars

Returns String as a Source of [Char]] "abcd".char_~ tp // Prints ~(a, x, c, d)

Inherited from
_transform
Source
_transform.scala
inline def charAt(inline i: Int): Char

Char at position

Char at position

Returns Char at the specified position

Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("charAt_Opt")
inline def charAt_?(i: Int): Char.Opt

Char at position

Char at position

Optionally Returns Char at the specified position

/ is returned if specified position is out of String range

if(<name>.charAt_?(2).take(_.isUpper)) ()
// is equivalent
if(<name>.length >=2 && <name>.charAt(2).isUpper) ()
Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("charIndex_Opt")
inline def charIndex_?(inline f: Char => Boolean, inline from: Int.Opt): Int.Opt

Char index

Char index

Optionally returns index of the first Char passing the let function

   "abcd_abcd_".charIndex_?(_ >= 'd', 4) tp // Prints: Opt(8)
   "abcd_abcd_".charIndex_?('x' <> 'z') tp  // Prints: Opt(\/)
Value Params
from

position to start looking from

Inherited from
_evaluate
Source
_evaluate.scala
inline def compareTo(inline v: A): Int
Inherited from
_evaluate
Source
_evaluate.scala
inline def contains(inline v: A | String): Boolean

Contains check

Contains check

Returns true is this String contains that String "abc".contains("cd") tp // Prints: false

Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("drop_Range")
inline def drop_<>(i: Int.<>): String
Inherited from
_copy
Source
_copy.scala
@scala.annotation.targetName("drop_Range")
inline def drop_<>(start: Int, inline size: Int): String
Inherited from
_copy
Source
_copy.scala
inline def dropFirst(inline cnt: Int): String
Inherited from
_copy
Source
_copy.scala
inline def dropLast(inline cnt: Int): String
Inherited from
_copy
Source
_copy.scala
inline def endsWith(inline v: A | String): Boolean

Check if ends with

Check if ends with

Returns true this String ends with that String "abc".endsWith("bc") tp // Prints: true

Inherited from
_evaluate
Source
_evaluate.scala
inline def equalsIgnoreCase(inline v: A | String): Boolean

Check if equals ignore case

Check if equals ignore case

Returns true this and that String are equal, if upper and lower case Chars are considered equal "aBc".equalsIgnoreCase("ABC").tp // Prints: true

Inherited from
_evaluate
Source
_evaluate.scala
inline def indent(inline tag: A | String): String

Indents text with the lines

Indents text with the lines

Indents text with the tag.

Prefixes first line with the tag, other lines with tag equal space

```
   "abc\

de
xyz".indent("Idxs: ").tp // Output Idxs: abc de xyz ```

Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("indexOf_Stream")
inline def indexOf_~(inline v: A | String, inline from: Int.Opt): ~[Int]

Source of indexes

Source of indexes

Source of indexes for each occurrence of x "abcd_abcd_abcd_abcd_abcd".indexOf_~("bc") tp // Prints ~(1, 6, 11, 16, 21)

Value Params
from

position to start looking from

Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("indexOf_Opt")
inline def indexOf_?(inline v: A | String, inline from: Int.Opt): Int.Opt

Value position

Value position

Optionally returns position of the specified x "abcd_abcd_".indexOf_?("d_a") tp // Prints: Opt(3)

Value Params
from

position to start looking from

Inherited from
_evaluate
Source
_evaluate.scala
inline def insertAt(inline i: Int, inline v: A | String): String

Insert at position

Insert at position

Creates new String with x inserted at the specified position "0123456789".insertAt(5,"abc") tp // Prints: 01234abc56789

Inherited from
_modify
Source
_modify.scala
def join(v: A | String): String
Inherited from
_modify
Source
_modify.scala
inline def joinAll(inline v: ~[A | String]): String
Inherited from
_modify
Source
_modify.scala
inline def label: String

Capitalize

Capitalize

Capitalizes first character of every word (separated by white spaces) "all string ops".label tp // Prints: All String Ops

Inherited from
_modify
Source
_modify.scala
@scala.annotation.targetName("lastCharIndex_Opt")
inline def lastCharIndex_?(inline f: Char => Boolean, inline from: Int.Opt): Int.Opt

Char index

Char index

Optionally returns index of the last Char passing the let function

   "abcd_abcd_".lastCharIndex_?(_ >= 'd', 4) tp // Prints: Opt(3)
   "abcd_abcd_".lastCharIndex_?('x' <> 'z') tp  // Prints: Opt(\/)
Value Params
from

last position to start looking from end to start

Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("lastIndexOf_Opt")
inline def lastIndexOf_?(inline v: A | String, inline from: Int.Opt): Int.Opt

Value position

Value position

Optionally returns last position of the specified x "abcd_abcd_abcd_".lastIndexOf_?("d_a") tp // Prints: Opt(8)

Value Params
from

last position to start looking from end to start

Inherited from
_evaluate
Source
_evaluate.scala
inline def length: Int
Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("line_Stream")
inline def line_~: ~[String]

Source of lines

Source of lines

Creates a [[Source]] of Strings representing lines (delimited by '

') of this text

```  "abc\

def
xyz".line_~.tp // Prints ~(abc, def, xyz) ```

Inherited from
_transform
Source
_transform.scala
inline def lower: String

toLowerCase

toLowerCase

Creates new String with all upper case Chars changed to lower case "ABc".lower tp // Prints: abc

Inherited from
_modify
Source
_modify.scala
@scala.annotation.targetName("nonEmpty_Opt")
inline def nonEmpty_?: Opt[String]
Inherited from
_transform
Source
_transform.scala
inline def padEndTo(inline sz: Int, inline pad: String): String

Pad end

Pad end

Pads end of string to targetLength

Value Params
pad

string to pad with. "ABC".padEndTo(10,"_") tp // Prints: ABC_______

Inherited from
_modify
Source
_modify.scala
inline def padStartTo(inline sz: Int, inline pad: String): String

Pad start

Pad start

Pads start of string to targetLength

Value Params
pad

string to pad with. "ABC".padStartTo(10,"_") tp // Prints: _______ABC

Inherited from
_modify
Source
_modify.scala
inline def remove(inline v: A | String): String

Remove all

Remove all

Creates new String with all occurrences of x removed "123123123123".remove("2") tp // Prints: 13131313

Inherited from
_modify
Source
_modify.scala
inline def replace(inline v: A | String, inline target: A | String): String

Replace all

Replace all

Creates new String with all occurrences of x replaced with target "123123123123".replace("2","_") tp // Prints: 1_31_31_31_3

Inherited from
_modify
Source
_modify.scala
inline def replace(inline r: Int.<>, inline v: A | String): String

Replace range with x

Replace range with x

Creates new String with all occurrences of x replaced with target "0123456789".replace(3 <> 7 ,"_") tp // Prints: 012_89

Inherited from
_modify
Source
_modify.scala
inline def replaceFirst(inline v: A | String, inline v2: A | String, inline cnt: Int): String
Inherited from
_modify
Source
_modify.scala
inline def replaceLast(inline v: A | String, inline v2: A | String, inline cnt: Int): String
Inherited from
_modify
Source
_modify.scala
@scala.annotation.targetName("split_Stream")
inline def split_~(inline separators: Array[Char]): ~[String]
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("split_Stream")
inline def split_~(inline separator: Char): ~[String]
Inherited from
_transform
Source
_transform.scala
inline def startsWith(inline v: A | String): Boolean

Check if begins with

Check if begins with

Returns true this String starts with that String "abc".startsWith("ab") tp // Prints: true

Inherited from
_evaluate
Source
_evaluate.scala
@scala.annotation.targetName("take_Range")
inline def take_<>(r: Int.<>): String
Inherited from
_copy
Source
_copy.scala
@scala.annotation.targetName("take_Range")
inline def take_<>(start: Int, inline size: Int): String
Inherited from
_copy
Source
_copy.scala
inline def takeAfter(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy end

Copy end

Copies String from the position where the specified v found plus the length of the v

If no v found, dflt v is returned, or original if dflt is void

   "abcdefg".copyAfter("cd") tp // Prints: efg
Value Params
string

position to start looking from

Inherited from
_copy
Source
_copy.scala
inline def takeAfterLast(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy end

Copy end

Copies String from the last position the specified v found plus the length of the v

If no v found, dflt v is returned, or original if dflt is void.

   "abcd_abcd_abcd".takeFromLast("ab") tp // Prints: cd
Value Params
from

string last position to start looking from end to start

Inherited from
_copy
Source
_copy.scala
inline def takeBefore(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy start

Copy start

Copies String from the beginning until specified v found

If no v found, dflt v is returned, or original if dflt is void

   "abcdefg".takeBefore("ef") tp // Prints: abcd
Value Params
string

position to start looking from

Inherited from
_copy
Source
_copy.scala
inline def takeBeforeLast(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy start

Copy start

Copies String from the beginning until the last occurrence of specified v found

If no v found, dflt v is returned, or original if dflt is void

   "abcd_abcd_abcd".copyBeforeLast("ab") tp // Prints: abcd_abcd_
Value Params
from

string last position to start looking from end to start

Inherited from
_copy
Source
_copy.scala
inline def takeFirst(inline cnt: Int): String
Inherited from
_copy
Source
_copy.scala
inline def takeFrom(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy end

Copy end

Copies String from the position where the specified v found

If no v found, dflt v is returned, or original if dflt is void

   "abcdefg".takeFrom("cd") tp // Prints: cdefg
Value Params
string

position to start looking from

Inherited from
_copy
Source
_copy.scala
inline def takeFromLast(inline v: A | String, inline dflt: Opt[A], inline from: Int.Opt): String

Copy end

Copy end

Copies String from the last position the specified v found

If no v found, dflt v is returned, or original if dflt is void.

   "abcd_abcd_abcd".takeFromLast("ab") tp // Prints: abcd
Value Params
from

string last position to start looking from end to start

Inherited from
_copy
Source
_copy.scala
inline def takeLast(inline cnt: Int): String
Inherited from
_copy
Source
_copy.scala
@scala.annotation.targetName("toBoolean_Opt")
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toBoolean_Result")
inline def toBoolean_??: Result[Boolean]

Boolean result conversion

Boolean result conversion

Converts String to Boolean result

 "true".toBoolean_?? tp

 "abc".toBoolean_?? tp

 // Output
 Result(true)
 Result(failure=For input string: "abc")
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toDouble_Opt")
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toDouble_Result")
inline def toDouble_??: Result[Double]

Double result conversion

Double result conversion

Converts String to Double result

 "123.45".toDouble_?? tp

 "abc".toDouble_?? tp

 // Output
 Result(123.45)
 Result(failure=For input string: "abc")
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toInt_Opt")
inline def toInt_?: Int.Opt
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toInt_Result")
inline def toInt_??: Result[Int]

Int result conversion

Int result conversion

Converts String to Int result

 "123".toInt_?? tp

 "abc".toInt_?? tp

 // Output
 Result(123)
 Result(failure=For input string: "abc")
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("tokenized_Stream")
inline def tokenized_~(inline separators: ~[A]): ~[(String, Int.<>, String)]

Source of tokens

Source of tokens

Multi token tokenizetion

Returns a Tuple including:

  • Separator preceding the token, empty for the first token
  • !.Range of the token in the text
  • String token
  val str: String = (1 <> 40).~.makeString()
  "Text to Tokenize:".tp.tp
  str.tp.tp
  ("Token", "Range", "String").tp
  str.tokenized_~(~~("000","111","222","333","444")).print

  // Output

  Text to Tokenize:

  12345678910111213141516171819202122232425262728293031323334353637383940

  (Token,Range,String)
  --- --------- -------------------
  ?   ?         ?
  --- --------- -------------------
       0 <>> 11 12345678910
  111 14 <>> 33 2131415161718192021
  222 36 <>> 55 3242526272829303132
  333 58 <>> 71 4353637383940
  --- --------- -------------------
Value Params
separators

a Source of text separators to consider

Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toLong_Opt")
inline def toLong_?: Long.Opt
Inherited from
_transform
Source
_transform.scala
@scala.annotation.targetName("toLong_Result")
inline def toLong_??: Result[Long]

Long result conversion

Long result conversion

Converts String to Long result

  "123".toLong_?? tp

  "abc".toLong_?? tp

  // Output
  Result(123)
  Result(failure=For input string: "abc")
Inherited from
_transform
Source
_transform.scala
inline def trim: String

Trim both ends

Trim both ends

Trims both ends of String from space Chars

Inherited from
_modify
Source
_modify.scala
inline def trimBoth(inline f: Char => Boolean): String

Trim both ends

Trim both ends

Trims both ends of String from Chars defined by let function

   "yyxxxxABCxxyyxx".trimBoth(_ in 'x' <> 'z') tp           // Prints: ABC

   "yyxxxxABCxxyyxx".trimBoth(c => c == 'x' || c == 'y') tp // Prints: ABC
Inherited from
_modify
Source
_modify.scala
inline def trimEnd(inline f: Char => Boolean): String

Trim both ends

Trim both ends

Trims end of String from Chars defined by let function

   "ABCxxyyxx".trimEnd(_ in 'x' <> 'z') tp           // Prints: ABC

   "ABCxxyyxx".trimEnd(c => c == 'x' || c == 'y') tp // Prints: ABC
Inherited from
_modify
Source
_modify.scala
inline def trimEnd: String

Trim end

Trim end

Trims end of String from space Chars

Inherited from
_modify
Source
_modify.scala
inline def trimStart(inline f: Char => Boolean): String

Trim start

Trim start

Trims start of String from Chars defined by let function

   "yyxxxxABC".trimStart(_ in 'x' <> 'z') tp           // Prints: ABC

   "yyxxxxABC".trimStart(c => c == 'x' || c == 'y') tp // Prints: ABC
Inherited from
_modify
Source
_modify.scala
inline def trimStart: String

Trim start

Trim start

Trims start of String from space Chars

Inherited from
_modify
Source
_modify.scala
inline def upper: String

toUpperCase

toUpperCase

Creates new String with all lower case Chars changed to upper case "aBc".upper tp // Prints: ABC

Inherited from
_modify
Source
_modify.scala