Dave Bechberger created TINKERPOP-2672:
------------------------------------------
Summary: Add String Manipulation Steps to Gremlin
Key: TINKERPOP-2672
URL: https://issues.apache.org/jira/browse/TINKERPOP-2672
Project: TinkerPop
Issue Type: Improvement
Components: language
Reporter: Dave Bechberger
Today Gremlin requires that users fall back to closures to handle many common
string manipulation options that users want to do on data in the graph. This
is a problem for many users as many of the providers prevent the use of
closures due to the security risks so for these users there is no way to
manipulate strings directly.
The proposal here is to add a set of steps to handle common string manipulation
requests from users including:
* `concat(String)` - concatenates the String to the value of the traverser
* 'length()` - returns the length of the string
* `split(String)` - returns an array of strings based on the split char passed
in
* `substring(beginIndex, endIndex)` - returns a substring based on the start
and end index values passed in
* `substring(beginIndex)` - returns a substring beginning at the start index
* `rtrim()` - remove spaces at the beginning of a string
* `ltrim()` - remove spaces at the end of a string
* `trim()` - remove spaces at the beginning and end of a string
* `replace(old, new)` - replaces all occurences of the `old` string with the
`new` string
* `reverse()` - reverses the string
* `tostring()` - turns the incoming item into a string
* `toupper()` - upper cases the incoming string
* `tolower()` - lower cases the incoming string
All the above functions except `tostring()` will throw an error if a non-string
value is passed in
--
This message was sent by Atlassian Jira
(v8.20.1#820001)