The listing below shows those operators that are able to use regular expressions ('regex'). Not all require use of regex, but rather regex are allowed in some contexts. For instance, a .replace() operator's regex argument that defines what to match could be a literal string such a a particular word. Or, it can be a regex.
For link and unlink commands the regex use only applies to selection of link types. For runCommand() is it relates to parsing of the input string.
For query efficiency in larger documents, it is generally beneficial if a first—or previous—term(s) are used to reduce the number of matches before regex operations are applied. Regex operations are potentially more cpu-intensive task (i.e. take longer than simpler tasks); very complex regex will also take more time that simple ones. The burden is individually small, but in a large document with many agents running, the sum might become noticeable. By writing efficient queries, e.g. putting regex-based operator as the last term—where the query allows, it is possible to pre-empt any such slow-down occurring.
Regardless, the latter issues applies to large and or heavily queried documents. A new user is very unlikely to need to worry about such issue in their initial exploration of use of agents.
- any(group,testValue)
- collect_if(group,condition,attribute)
- contains(item)
- count_if(group, condition)
- every(group,value)
- if(condition){action}[else{action}]
- links[(item|group)].kind.[linkType].attribute
- List/Set.contains("regex")
- List/Set.containsAnyOf("list")
- List/Set.icontains("regex")
- List/Set.icontainsAnyOf("list")
- List/Set.replace("match","replacement")
- runCommand(commandLine[,inputs,directory])
- Stream.captureTo("matchString"[,"targetAttribute"])
- Stream.skipTo("matchString")
- String.contains("regex")
- String.containsAnyOf(aSet)
- String.extract("regex")
- String.extractAll("regex")
- String.find("string")
- String.icontains("regex")
- String.icontainsAnyOf(aSet)
- String.replace("find","replacement")
- String.split("regex")
- sum_if(group,condition,value)