Method `/()
- Method `/
mixed
`/(object
arg1
,mixed
arg2
)
mixed
`/(mixed
arg1
,object
arg2
)
array
(string
) `/(string
arg1
,int
arg2
)
array
(string
) `/(string
arg1
,float
arg2
)
array
(array
) `/(array
arg1
,int
arg2
)
array
(array
) `/(array
arg1
,float
arg2
)
array
(string
) `/(string
arg1
,string
arg2
)
array
(array
) `/(array
arg1
,array
arg2
)
float
`/(float
arg1
,int
|float
arg2
)
float
`/(int
arg1
,float
arg2
)
int
`/(int
arg1
,int
arg2
)
mixed
`/(mixed
arg1
,mixed
arg2
,mixed
...extras
)- Description
Division/split.
Every expression with the
/
operator becomes a call to this function, i.e.a/b
is the same aspredef::`/(a,b)
.- Returns
If there are more than two arguments, the result will be
`/(`/(
.arg1
,arg2
), @extras
)If
arg1
is an object that implements lfun::`/(), that function will be called witharg2
as the single argument.If
arg2
is an object that implements lfun::``/(), that function will be called witharg1
as the single argument.Otherwise the result will be as follows:
arg1
can have any of the following types:string
arg2
can have any of the following types:int
|float
The result will be and array of
arg1
split in segments of lengtharg2
. Ifarg2
is negative the splitting will start from the end ofarg1
.string
The result will be an array of
arg1
split at each occurrence ofarg2
. Note that the segments that matched againstarg2
will not be in the result.array
arg2
can have any of the following types:int
|float
The result will be and array of
arg1
split in segments of lengtharg2
. Ifarg2
is negative the splitting will start from the end ofarg1
.array
The result will be an array of
arg1
split at each occurrence ofarg2
. Note that the elements that matched againstarg2
will not be in the result.float
|int
The result will be
. If both arguments are int, the result will be truncated to an int. Otherwise the result will be a float.arg1
/arg2
- Note
Unlike in some languages, the function f(x) = x/n (x and n integers) behaves in a well-defined way and is always rounded down. When you increase x, f(x) will increase with one for each n:th increment. For all x, (x + n) / n = x/n + 1; crossing zero is not special. This also means that / and % are compatible, so that a = b*(a/b) + a%b for all a and b.
- See also