Package jason.stdlib
Class substring
java.lang.Object
jason.asSemantics.DefaultInternalAction
jason.stdlib.substring
- All Implemented Interfaces:
InternalAction,Serializable
Internal action: .substring.
Description: checks if a string is sub-string of another string. The arguments can be other kinds of terms, in which case the toString() of the term is used. If "position" is a free variable, the internal action backtracks all possible values for the positions where the sub-string occurs in the string.
Parameters:
- + substring (any term).
- +/- string (any term).
- +/- start position (optional -- integer): the initial position of the string where the sub-string occurs.
- +/- end position (optional -- integer): the position in the string where the sub-string ends.
Examples:
-
.substring("b","aaa"): false. -
.substring("b","aaa",X): false. -
.substring("a","bbacc"): true. -
.substring("a","abbacca",X): true andXunifies with 0, 3, and 6. -
.substring("a","bbacc",0): false. When the third argument is 0, .substring works like a java startsWith method. -
.substring(a(10),b(t1,a(10)),X): true andXunifies with 5. -
.substring(a(10),b("t1,a(10),kk"),X): true andXunifies with 6. -
.substring(R,a(10,20),5): true andRunifies with "20)". -
.substring(R,a(10,20),5,7): true andRunifies with "20".
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic InternalActioncreate()execute(TransitionSystem ts, Unifier un, Term[] args) Executes the internal action.intintMethods inherited from class jason.asSemantics.DefaultInternalAction
canBeUsedInContext, checkArguments, destroy, prepareArguments, suspendIntention
-
Constructor Details
-
substring
public substring()
-
-
Method Details
-
create
-
getMinArgs
public int getMinArgs()- Overrides:
getMinArgsin classDefaultInternalAction
-
getMaxArgs
public int getMaxArgs()- Overrides:
getMaxArgsin classDefaultInternalAction
-
execute
Description copied from interface:InternalActionExecutes the internal action. It should return a Boolean or an Iterator. A true boolean return means that the IA was successfully executed. An Iterator result means that there is more than one answer for this IA (e.g. see member internal action). - Specified by:
executein interfaceInternalAction- Overrides:
executein classDefaultInternalAction- Throws:
Exception
-