Package Exports
- nlcst-search
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (nlcst-search) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
nlcst-search

Search for patterns in an NLCST tree.
Installation
npm:
npm install nlcst-search
Usage
var search = require('nlcst-search')
var toString = require('nlcst-to-string')
var tree = {
type: 'SentenceNode',
children: [
{
type: 'WordNode',
children: [
{type: 'TextNode', value: 'Don'},
{type: 'PunctuationNode', value: '’'},
{type: 'TextNode', value: 't'}
]
},
{type: 'WhiteSpaceNode', value: ' '},
{
type: 'WordNode',
children: [{type: 'TextNode', value: 'do'}]
},
{type: 'WhiteSpaceNode', value: ' '},
{
type: 'WordNode',
children: [
{type: 'TextNode', value: 'Block'},
{type: 'PunctuationNode', value: '-'},
{type: 'TextNode', value: 'level'}
]
}
]
}
search(tree, ['dont'], function(nodes) {
console.log(toString(nodes))
})
// Don’t
search(tree, ['do blocklevel'], function(nodes) {
console.log(toString(nodes))
})
// do Block-level
API
search(node, patterns, handler[, allowApostrophes|options])
Search for patterns in an NLCST tree.
Throws
Error
— When not given node
or patterns
.
Parameters
node
Tree to search in (Node
).
patterns
Patterns to search for (Array.<string>
or Object
).
If an Object
, uses its keys. Each pattern is a space-delimited list of
words, where each word is normalized to remove casing, apostrophes,
and dashes. Spaces in a pattern mean zero or more white space nodes in
the tree.
handler
Handler invoked when a match is found (Function
).
allowApostrophes
Treated as options.allowApostrophes
.
options.allowApostrophes
Passed to nlcst-normalize
(boolean
, default: false
).
options.allowDashes
Passed to nlcst-normalize
(boolean
, default: false
).
options.allowLiterals
Include literal phrases (boolean
, default: false
).
function handler(nodes, index, parent, pattern)
Handler invoked when a match is found.
Parameters
nodes
List of siblings which match pattern
(Array.<Node>
).
index
Position at which the match starts in parent
(number
).
parent
Parent node of nodes
(Node
).
pattern
The matched pattern (string
).
Contribute
See contributing.md
in syntax-tree/nlcst
for ways to get
started.
This organisation has a Code of Conduct. By interacting with this repository, organisation, or community you agree to abide by its terms.