jason.stdlib
Class substring
java.lang.Object
jason.asSemantics.DefaultInternalAction
jason.stdlib.substring
- All Implemented Interfaces:
- InternalAction, java.io.Serializable
public class substring
- extends DefaultInternalAction
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).
- +/- position (optional -- integer): the position of
the string where the sub-string occurs.
Examples:
-
.substring("b","aaa")
: false.
-
.substring("b","aaa",X)
: false.
-
.substring("a","bbacc")
: true.
-
.substring("a","abbacca",X)
: true and X
unifies with 0, 3, and 6.
-
.substring("a","bbacc",0)
: false.
-
.substring(a(10),b(t1,a(10)),X)
: true and X
unifies with 5.
-
.substring(a(10),b("t1,a(10)"),X)
: true and X
unifies with 6.
- See Also:
concat
,
delete
,
length
,
reverse
,
Serialized Form
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
substring
public substring()
create
public static InternalAction create()
getMinArgs
public int getMinArgs()
- Overrides:
getMinArgs
in class DefaultInternalAction
getMaxArgs
public int getMaxArgs()
- Overrides:
getMaxArgs
in class DefaultInternalAction
execute
public java.lang.Object execute(TransitionSystem ts,
Unifier un,
Term[] args)
throws java.lang.Exception
- Description copied from interface:
InternalAction
- Executes 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:
execute
in interface InternalAction
- Overrides:
execute
in class DefaultInternalAction
- Throws:
java.lang.Exception