Class OperatorMatches
java.lang.Object
org.springframework.expression.spel.ast.SpelNodeImpl
org.springframework.expression.spel.ast.Operator
org.springframework.expression.spel.ast.OperatorMatches
Implements the matches operator. Matches takes two operands:
The first is a String and the second is a Java regex.
It will return
true when SpelNodeImpl.getValue(ExpressionState) is called
if the first operand matches the regex.- Since:
- 3.0
- Author:
- Andy Clement, Juergen Hoeller, Sam Brannen
-
Nested Class Summary
Nested classes/interfaces inherited from class Operator
Operator.DescriptorComparison -
Field Summary
Fields inherited from class Operator
leftActualDescriptor, rightActualDescriptorFields inherited from class SpelNodeImpl
children, exitTypeDescriptorFields inherited from interface Opcodes
AALOAD, AASTORE, ACC_ABSTRACT, ACC_ANNOTATION, ACC_BRIDGE, ACC_DEPRECATED, ACC_ENUM, ACC_FINAL, ACC_INTERFACE, ACC_MANDATED, ACC_MODULE, ACC_NATIVE, ACC_OPEN, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_RECORD, ACC_STATIC, ACC_STATIC_PHASE, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_SYNTHETIC, ACC_TRANSIENT, ACC_TRANSITIVE, ACC_VARARGS, ACC_VOLATILE, ACONST_NULL, ALOAD, ANEWARRAY, ARETURN, ARRAYLENGTH, ASM10_EXPERIMENTAL, ASM4, ASM5, ASM6, ASM7, ASM8, ASM9, ASTORE, ATHROW, BALOAD, BASTORE, BIPUSH, CALOAD, CASTORE, CHECKCAST, D2F, D2I, D2L, DADD, DALOAD, DASTORE, DCMPG, DCMPL, DCONST_0, DCONST_1, DDIV, DLOAD, DMUL, DNEG, DOUBLE, DREM, DRETURN, DSTORE, DSUB, DUP, DUP_X1, DUP_X2, DUP2, DUP2_X1, DUP2_X2, F_APPEND, F_CHOP, F_FULL, F_NEW, F_SAME, F_SAME1, F2D, F2I, F2L, FADD, FALOAD, FASTORE, FCMPG, FCMPL, FCONST_0, FCONST_1, FCONST_2, FDIV, FLOAD, FLOAT, FMUL, FNEG, FREM, FRETURN, FSTORE, FSUB, GETFIELD, GETSTATIC, GOTO, H_GETFIELD, H_GETSTATIC, H_INVOKEINTERFACE, H_INVOKESPECIAL, H_INVOKESTATIC, H_INVOKEVIRTUAL, H_NEWINVOKESPECIAL, H_PUTFIELD, H_PUTSTATIC, I2B, I2C, I2D, I2F, I2L, I2S, IADD, IALOAD, IAND, IASTORE, ICONST_0, ICONST_1, ICONST_2, ICONST_3, ICONST_4, ICONST_5, ICONST_M1, IDIV, IF_ACMPEQ, IF_ACMPNE, IF_ICMPEQ, IF_ICMPGE, IF_ICMPGT, IF_ICMPLE, IF_ICMPLT, IF_ICMPNE, IFEQ, IFGE, IFGT, IFLE, IFLT, IFNE, IFNONNULL, IFNULL, IINC, ILOAD, IMUL, INEG, INSTANCEOF, INTEGER, INVOKEDYNAMIC, INVOKEINTERFACE, INVOKESPECIAL, INVOKESTATIC, INVOKEVIRTUAL, IOR, IREM, IRETURN, ISHL, ISHR, ISTORE, ISUB, IUSHR, IXOR, JSR, L2D, L2F, L2I, LADD, LALOAD, LAND, LASTORE, LCMP, LCONST_0, LCONST_1, LDC, LDIV, LLOAD, LMUL, LNEG, LONG, LOOKUPSWITCH, LOR, LREM, LRETURN, LSHL, LSHR, LSTORE, LSUB, LUSHR, LXOR, MONITORENTER, MONITOREXIT, MULTIANEWARRAY, NEW, NEWARRAY, NOP, NULL, POP, POP2, PUTFIELD, PUTSTATIC, RET, RETURN, SALOAD, SASTORE, SIPUSH, SOURCE_DEPRECATED, SOURCE_MASK, SWAP, T_BOOLEAN, T_BYTE, T_CHAR, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT, TABLESWITCH, TOP, UNINITIALIZED_THIS, V_PREVIEW, V1_1, V1_2, V1_3, V1_4, V1_5, V1_6, V1_7, V1_8, V10, V11, V12, V13, V14, V15, V16, V17, V18, V19, V20, V21, V22, V23, V24, V25, V9 -
Constructor Summary
ConstructorsConstructorDescriptionOperatorMatches(int startPos, int endPos, SpelNodeImpl... operands) Deprecated.OperatorMatches(ConcurrentMap<String, Pattern> patternCache, int startPos, int endPos, SpelNodeImpl... operands) Create a newOperatorMatchesinstance with a shared pattern cache. -
Method Summary
Modifier and TypeMethodDescriptiongetValueInternal(ExpressionState state) Check the first operand matches the regex specified as the second operand.Methods inherited from class Operator
equalityCheck, generateComparisonCode, getLeftOperand, getOperatorName, getRightOperand, isCompilableOperatorUsingNumerics, toStringASTMethods inherited from class SpelNodeImpl
generateCodeForArgument, generateCodeForArguments, generateCodeForArguments, getChild, getChildCount, getEndPosition, getExitDescriptor, getObjectClass, getStartPosition, getTypedValue, getValue, getValue, getValueRef, isNullSafe, isWritable, nextChildIs, setValue, setValueInternalMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface SpelNode
generateCode, isCompilable
-
Constructor Details
-
OperatorMatches
@Deprecated(since="5.2.23") public OperatorMatches(int startPos, int endPos, SpelNodeImpl... operands) Deprecated.as of Spring Framework 5.2.23 in favor of invokingOperatorMatches(ConcurrentMap, int, int, SpelNodeImpl...)with a shared pattern cache insteadCreate a newOperatorMatchesinstance. -
OperatorMatches
public OperatorMatches(ConcurrentMap<String, Pattern> patternCache, int startPos, int endPos, SpelNodeImpl... operands) Create a newOperatorMatchesinstance with a shared pattern cache.- Since:
- 5.2.23
-
-
Method Details
-
getValueInternal
Check the first operand matches the regex specified as the second operand.- Specified by:
getValueInternalin classSpelNodeImpl- Parameters:
state- the expression state- Returns:
trueif the first operand matches the regex specified as the second operand, otherwisefalse- Throws:
EvaluationException- if there is a problem evaluating the expression (for example, the regex is invalid)
-
OperatorMatches(ConcurrentMap, int, int, SpelNodeImpl...)with a shared pattern cache instead