You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 9
Next »
Splits tokens on specified characters, typically punctuation. Multiple split characters in a row will create a single split (not multiple splits).
Operates On: Lexical Items with TOKEN
Configuration
- splitChars (string, optional) - List of characters which should be used to split tokens.
- If not present, then tokens are split on any sequence of punctuation.
- dontSplitChars (string, optional) - List of characters which will NOT be used to split tokens.
- This is typically used to identify exceptions (characters which are not used to split tokens) when splitChars is missing.
- These characters are included in the produced tokens.
- splitFlag (string, optional) - The flag to be put on the vertex between the two tokens.
- If missing, defaults to ALL_PUNCTUATION.
- skipFlags (string array, optional) - Flags to be skipped by this stage
- Tokens marked with this flags will be ignore by this stage, and no process will be performed.
- requireFlags (string array, optional)
- Tokens need to have all the specified flags, in order to be processed
- debug (boolean, optional)
- Enable all debug log functionality of the stage, if any.
Examples
{
"type":"CharacterSplitter",
"dontSplitChars":"."
}
Splits on all punctuation, except periods.
For example, the token: "SagaToolkit-1.0" will produce the following graph:
V-------[SagaToolkit-1.0]-------V
^---[SagaToolkit]--V--[1.0]----^
{
"type":"CharacterSplitter",
"splitChars":"-",
"splitFlag":"DASH_SPLIT"
}
(splits tokens dashes)
Output Flags
Lex-Item Flags:
- TOKEN - All tokens produced are tagged as TOKEN
Vertex Flags:
- ALL_PUNCTUATION - Identifies the vertex as all token
- The default flag if no "splitFlag" is present.
- <splitFlag> - Defines an alternative flag to ALL_PUNCTUATION, if desired (see above)
Example
With Defaults
V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V-----[iPhone-*&@#*&7.0]-----V
^--[Abe]--V--[Lincoln]--^ ^--[iPhone]--V--[7]--V--[0]--^
With Don't Split Param
{
"type":"CharacterSplitter",
"dontSplitChars": "."
}
V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V--[iPhone-*&@#*&7.0]--V
^--[Abe]--V--[Lincoln]--^ ^--[iPhone]--V--[7.0]--^
With Split Chars Param
{
"type":"CharacterSplitter",
"splitChars": "-#."
"dontSplitChars": "."
}
V-----[Abe-Lincoln]-----V--[likes]--V--[the]--V--------[iPhone-*&@#*&7.0]--------V
^--[Abe]--V--[Lincoln]--^ ^--[iPhone]--V--[*&@]--V--[*&7.0]--^