public final class java.util.regex.Matcher implements java.util.regex.MatchResult
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: java.util.regex.Matcher
super_class: java.lang.Object
{
java.util.regex.Pattern parentPattern;
descriptor: Ljava/util/regex/Pattern;
flags: (0x0000)
int[] groups;
descriptor: [I
flags: (0x0000)
int from;
descriptor: I
flags: (0x0000)
int to;
descriptor: I
flags: (0x0000)
int lookbehindTo;
descriptor: I
flags: (0x0000)
java.lang.CharSequence text;
descriptor: Ljava/lang/CharSequence;
flags: (0x0000)
static final int ENDANCHOR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final int NOANCHOR;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
int acceptMode;
descriptor: I
flags: (0x0000)
int first;
descriptor: I
flags: (0x0000)
int last;
descriptor: I
flags: (0x0000)
int oldLast;
descriptor: I
flags: (0x0000)
int lastAppendPosition;
descriptor: I
flags: (0x0000)
int[] locals;
descriptor: [I
flags: (0x0000)
java.util.regex.IntHashSet[] localsPos;
descriptor: [Ljava/util/regex/IntHashSet;
flags: (0x0000)
boolean hitEnd;
descriptor: Z
flags: (0x0000)
boolean requireEnd;
descriptor: Z
flags: (0x0000)
boolean transparentBounds;
descriptor: Z
flags: (0x0000)
boolean anchoringBounds;
descriptor: Z
flags: (0x0000)
int modCount;
descriptor: I
flags: (0x0000)
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield java.util.regex.Matcher.acceptMode:I
2: aload 0
iconst_m1
putfield java.util.regex.Matcher.first:I
aload 0
iconst_0
putfield java.util.regex.Matcher.last:I
3: aload 0
iconst_m1
putfield java.util.regex.Matcher.oldLast:I
4: aload 0
iconst_0
putfield java.util.regex.Matcher.lastAppendPosition:I
5: aload 0
iconst_0
putfield java.util.regex.Matcher.transparentBounds:Z
6: aload 0
iconst_1
putfield java.util.regex.Matcher.anchoringBounds:Z
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/regex/Matcher;
void <init>(java.util.regex.Pattern, java.lang.CharSequence);
descriptor: (Ljava/util/regex/Pattern;Ljava/lang/CharSequence;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield java.util.regex.Matcher.acceptMode:I
2: aload 0
iconst_m1
putfield java.util.regex.Matcher.first:I
aload 0
iconst_0
putfield java.util.regex.Matcher.last:I
3: aload 0
iconst_m1
putfield java.util.regex.Matcher.oldLast:I
4: aload 0
iconst_0
putfield java.util.regex.Matcher.lastAppendPosition:I
5: aload 0
iconst_0
putfield java.util.regex.Matcher.transparentBounds:Z
6: aload 0
iconst_1
putfield java.util.regex.Matcher.anchoringBounds:Z
7: aload 0
aload 1
putfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
8: aload 0
aload 2
putfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
9: aload 1
getfield java.util.regex.Pattern.capturingGroupCount:I
bipush 10
invokestatic java.lang.Math.max:(II)I
istore 3
start local 3 10: aload 0
iload 3
iconst_2
imul
newarray 10
putfield java.util.regex.Matcher.groups:[I
11: aload 0
aload 1
getfield java.util.regex.Pattern.localCount:I
newarray 10
putfield java.util.regex.Matcher.locals:[I
12: aload 0
aload 1
getfield java.util.regex.Pattern.localTCNCount:I
anewarray java.util.regex.IntHashSet
putfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
13: aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/regex/Matcher;
0 15 1 parent Ljava/util/regex/Pattern;
0 15 2 text Ljava/lang/CharSequence;
10 15 3 parentGroupCount I
MethodParameters:
Name Flags
parent
text
public java.util.regex.Pattern pattern();
descriptor: ()Ljava/util/regex/Pattern;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public java.util.regex.MatchResult toMatchResult();
descriptor: ()Ljava/util/regex/MatchResult;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
invokevirtual java.util.regex.Matcher.toMatchResult:(Ljava/lang/String;)Ljava/util/regex/MatchResult;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
private java.util.regex.MatchResult toMatchResult(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/regex/MatchResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: new java.util.regex.Matcher$ImmutableMatchResult
dup
aload 0
getfield java.util.regex.Matcher.first:I
1: aload 0
getfield java.util.regex.Matcher.last:I
2: aload 0
invokevirtual java.util.regex.Matcher.groupCount:()I
3: aload 0
getfield java.util.regex.Matcher.groups:[I
invokevirtual int[].clone:()Ljava/lang/Object;
checkcast int[]
4: aload 1
5: invokespecial java.util.regex.Matcher$ImmutableMatchResult.<init>:(III[ILjava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/util/regex/Matcher;
0 6 1 text Ljava/lang/String;
MethodParameters:
Name Flags
text
public java.util.regex.Matcher usePattern(java.util.regex.Pattern);
descriptor: (Ljava/util/regex/Pattern;)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Pattern cannot be null"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
3: aload 1
getfield java.util.regex.Pattern.capturingGroupCount:I
bipush 10
invokestatic java.lang.Math.max:(II)I
istore 2
start local 2 4: aload 0
iload 2
iconst_2
imul
newarray 10
putfield java.util.regex.Matcher.groups:[I
5: aload 0
aload 1
getfield java.util.regex.Pattern.localCount:I
newarray 10
putfield java.util.regex.Matcher.locals:[I
6: iconst_0
istore 3
start local 3 7: goto 10
8: StackMap locals: int int
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 3
iconst_m1
iastore
9: iinc 3 1
StackMap locals:
StackMap stack:
10: iload 3
aload 0
getfield java.util.regex.Matcher.groups:[I
arraylength
if_icmplt 8
end local 3 11: iconst_0
istore 3
start local 3 12: goto 15
13: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.locals:[I
iload 3
iconst_m1
iastore
14: iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
aload 0
getfield java.util.regex.Matcher.locals:[I
arraylength
if_icmplt 13
end local 3 16: aload 0
aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
getfield java.util.regex.Pattern.localTCNCount:I
anewarray java.util.regex.IntHashSet
putfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
17: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
18: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Ljava/util/regex/Matcher;
0 19 1 newPattern Ljava/util/regex/Pattern;
4 19 2 parentGroupCount I
7 11 3 i I
12 16 3 i I
MethodParameters:
Name Flags
newPattern
public java.util.regex.Matcher reset();
descriptor: ()Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
iconst_m1
putfield java.util.regex.Matcher.first:I
1: aload 0
iconst_0
putfield java.util.regex.Matcher.last:I
2: aload 0
iconst_m1
putfield java.util.regex.Matcher.oldLast:I
3: iconst_0
istore 1
start local 1 4: goto 7
5: StackMap locals: int
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_m1
iastore
6: iinc 1 1
StackMap locals:
StackMap stack:
7: iload 1
aload 0
getfield java.util.regex.Matcher.groups:[I
arraylength
if_icmplt 5
end local 1 8: iconst_0
istore 1
start local 1 9: goto 12
10: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.locals:[I
iload 1
iconst_m1
iastore
11: iinc 1 1
StackMap locals:
StackMap stack:
12: iload 1
aload 0
getfield java.util.regex.Matcher.locals:[I
arraylength
if_icmplt 10
end local 1 13: iconst_0
istore 1
start local 1 14: goto 18
15: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 1
aaload
ifnull 17
16: aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 1
aaload
invokevirtual java.util.regex.IntHashSet.clear:()V
17: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
18: iload 1
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
arraylength
if_icmplt 15
end local 1 19: aload 0
iconst_0
putfield java.util.regex.Matcher.lastAppendPosition:I
20: aload 0
iconst_0
putfield java.util.regex.Matcher.from:I
21: aload 0
aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
putfield java.util.regex.Matcher.to:I
22: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
23: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljava/util/regex/Matcher;
4 8 1 i I
9 13 1 i I
14 19 1 i I
public java.util.regex.Matcher reset(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
1: aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/regex/Matcher;
0 2 1 input Ljava/lang/CharSequence;
MethodParameters:
Name Flags
input
public int start();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.first:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/regex/Matcher;
public int start(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
iflt 3
iload 1
aload 0
invokevirtual java.util.regex.Matcher.groupCount:()I
if_icmple 4
3: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "No group "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iaload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/regex/Matcher;
0 5 1 group I
MethodParameters:
Name Flags
group
public int start(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.groups:[I
aload 0
aload 1
invokevirtual java.util.regex.Matcher.getMatchedGroupIndex:(Ljava/lang/String;)I
iconst_2
imul
iaload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public int end();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.last:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/regex/Matcher;
public int end(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
iflt 3
iload 1
aload 0
invokevirtual java.util.regex.Matcher.groupCount:()I
if_icmple 4
3: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "No group "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iconst_1
iadd
iaload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/regex/Matcher;
0 5 1 group I
MethodParameters:
Name Flags
group
public int end(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.groups:[I
aload 0
aload 1
invokevirtual java.util.regex.Matcher.getMatchedGroupIndex:(Ljava/lang/String;)I
iconst_2
imul
iconst_1
iadd
iaload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public java.lang.String group();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public java.lang.String group(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match found"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 1
iflt 3
iload 1
aload 0
invokevirtual java.util.regex.Matcher.groupCount:()I
if_icmple 4
3: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "No group "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iaload
iconst_m1
if_icmpeq 5
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iconst_1
iadd
iaload
iconst_m1
if_icmpne 6
5: StackMap locals:
StackMap stack:
aconst_null
areturn
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iaload
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 1
iconst_2
imul
iconst_1
iadd
iaload
invokevirtual java.util.regex.Matcher.getSubSequence:(II)Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/regex/Matcher;
0 7 1 group I
MethodParameters:
Name Flags
group
public java.lang.String group(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.util.regex.Matcher.getMatchedGroupIndex:(Ljava/lang/String;)I
istore 2
start local 2 1: aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_2
imul
iaload
iconst_m1
if_icmpeq 2
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_2
imul
iconst_1
iadd
iaload
iconst_m1
if_icmpne 3
2: StackMap locals: int
StackMap stack:
aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_2
imul
iaload
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_2
imul
iconst_1
iadd
iaload
invokevirtual java.util.regex.Matcher.getSubSequence:(II)Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/regex/Matcher;
0 4 1 name Ljava/lang/String;
1 4 2 group I
MethodParameters:
Name Flags
name
public int groupCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
getfield java.util.regex.Pattern.capturingGroupCount:I
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public boolean matches();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield java.util.regex.Matcher.from:I
iconst_1
invokevirtual java.util.regex.Matcher.match:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public boolean find();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.last:I
istore 1
start local 1 1: iload 1
aload 0
getfield java.util.regex.Matcher.first:I
if_icmpne 3
2: iinc 1 1
3: StackMap locals: int
StackMap stack:
iload 1
aload 0
getfield java.util.regex.Matcher.from:I
if_icmpge 5
4: aload 0
getfield java.util.regex.Matcher.from:I
istore 1
5: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield java.util.regex.Matcher.to:I
if_icmple 12
6: iconst_0
istore 2
start local 2 7: goto 10
8: StackMap locals: int
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_m1
iastore
9: iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
aload 0
getfield java.util.regex.Matcher.groups:[I
arraylength
if_icmplt 8
end local 2 11: iconst_0
ireturn
12: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual java.util.regex.Matcher.search:(I)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/util/regex/Matcher;
1 13 1 nextSearchIndex I
7 11 2 i I
public boolean find(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
istore 2
start local 2 1: iload 1
iflt 2
iload 1
iload 2
if_icmple 3
2: StackMap locals: int
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
ldc "Illegal start index"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
4: aload 0
iload 1
invokevirtual java.util.regex.Matcher.search:(I)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/regex/Matcher;
0 5 1 start I
1 5 2 limit I
MethodParameters:
Name Flags
start
public boolean lookingAt();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield java.util.regex.Matcher.from:I
iconst_0
invokevirtual java.util.regex.Matcher.match:(II)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public static java.lang.String quoteReplacement(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
bipush 92
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 2
aload 0
bipush 36
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 3: iconst_0
istore 2
start local 2 4: goto 10
5: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.charAt:(I)C
istore 3
start local 3 6: iload 3
bipush 92
if_icmpeq 7
iload 3
bipush 36
if_icmpne 8
7: StackMap locals: int
StackMap stack:
aload 1
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
8: StackMap locals:
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
end local 3 9: iinc 2 1
StackMap locals:
StackMap stack:
10: iload 2
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 5
end local 2 11: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 s Ljava/lang/String;
3 12 1 sb Ljava/lang/StringBuilder;
4 11 2 i I
6 9 3 c C
MethodParameters:
Name Flags
s
public java.util.regex.Matcher appendReplacement(java.lang.StringBuffer, java.lang.String);
descriptor: (Ljava/lang/StringBuffer;Ljava/lang/String;)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 3: aload 0
aload 2
aload 3
invokevirtual java.util.regex.Matcher.appendExpandedReplacement:(Ljava/lang/String;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
4: aload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
aload 0
getfield java.util.regex.Matcher.lastAppendPosition:I
aload 0
getfield java.util.regex.Matcher.first:I
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
pop
5: aload 1
aload 3
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuffer;
pop
6: aload 0
aload 0
getfield java.util.regex.Matcher.last:I
putfield java.util.regex.Matcher.lastAppendPosition:I
7: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
8: aload 0
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/regex/Matcher;
0 9 1 sb Ljava/lang/StringBuffer;
0 9 2 replacement Ljava/lang/String;
3 9 3 result Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
sb
replacement
public java.util.regex.Matcher appendReplacement(java.lang.StringBuilder, java.lang.String);
descriptor: (Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.util.regex.Matcher.first:I
ifge 2
1: new java.lang.IllegalStateException
dup
ldc "No match available"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 3: aload 0
aload 2
aload 3
invokevirtual java.util.regex.Matcher.appendExpandedReplacement:(Ljava/lang/String;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
4: aload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
aload 0
getfield java.util.regex.Matcher.lastAppendPosition:I
aload 0
getfield java.util.regex.Matcher.first:I
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
pop
5: aload 1
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;)Ljava/lang/StringBuilder;
pop
6: aload 0
aload 0
getfield java.util.regex.Matcher.last:I
putfield java.util.regex.Matcher.lastAppendPosition:I
7: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
8: aload 0
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/regex/Matcher;
0 9 1 sb Ljava/lang/StringBuilder;
0 9 2 replacement Ljava/lang/String;
3 9 3 result Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
sb
replacement
private java.lang.StringBuilder appendExpandedReplacement(java.lang.String, java.lang.StringBuilder);
descriptor: (Ljava/lang/String;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 79
2: StackMap locals: int
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
istore 4
start local 4 3: iload 4
bipush 92
if_icmpne 13
4: iinc 3 1
5: iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmpne 9
6: new java.lang.IllegalArgumentException
dup
7: ldc "character to be escaped is missing"
8: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: int
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
istore 4
10: aload 2
iload 4
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: iinc 3 1
12: goto 79
StackMap locals:
StackMap stack:
13: iload 4
bipush 36
if_icmpne 77
14: iinc 3 1
15: iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmpne 19
16: new java.lang.IllegalArgumentException
dup
17: ldc "Illegal group reference: group index is missing"
18: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
istore 4
20: iconst_m1
istore 5
start local 5 21: iload 4
bipush 123
if_icmpne 54
22: iinc 3 1
23: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 6
start local 6 24: goto 31
25: StackMap locals: int java.lang.StringBuilder
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
istore 4
26: iload 4
invokestatic java.util.regex.ASCII.isLower:(I)Z
ifne 29
27: iload 4
invokestatic java.util.regex.ASCII.isUpper:(I)Z
ifne 29
28: iload 4
invokestatic java.util.regex.ASCII.isDigit:(I)Z
ifeq 32
29: StackMap locals:
StackMap stack:
aload 6
iload 4
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
30: iinc 3 1
31: StackMap locals:
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 25
32: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.lang.StringBuilder.length:()I
ifne 36
33: new java.lang.IllegalArgumentException
dup
34: ldc "named capturing group has 0 length name"
35: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
36: StackMap locals:
StackMap stack:
iload 4
bipush 125
if_icmpeq 40
37: new java.lang.IllegalArgumentException
dup
38: ldc "named capturing group is missing trailing '}'"
39: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
40: StackMap locals:
StackMap stack:
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 41: aload 7
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.util.regex.ASCII.isDigit:(I)Z
ifeq 47
42: new java.lang.IllegalArgumentException
dup
43: new java.lang.StringBuilder
dup
ldc "capturing group name {"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: ldc "} starts with digit character"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
45: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
46: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
47: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
invokevirtual java.util.regex.Pattern.namedGroups:()Ljava/util/Map;
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 51
48: new java.lang.IllegalArgumentException
dup
49: new java.lang.StringBuilder
dup
ldc "No group with name {"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
50: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
51: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
invokevirtual java.util.regex.Pattern.namedGroups:()Ljava/util/Map;
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 5
52: iinc 3 1
end local 7 end local 6 53: goto 74
54: StackMap locals:
StackMap stack:
iload 4
bipush 48
isub
istore 5
55: iload 5
iflt 56
iload 5
bipush 9
if_icmple 59
56: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
57: ldc "Illegal group reference"
58: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
59: StackMap locals:
StackMap stack:
iinc 3 1
60: iconst_0
istore 6
start local 6 61: goto 73
62: StackMap locals: int
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 64
63: goto 74
64: StackMap locals:
StackMap stack:
aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
bipush 48
isub
istore 7
start local 7 65: iload 7
iflt 74
iload 7
bipush 9
if_icmple 67
66: goto 74
67: StackMap locals: int
StackMap stack:
iload 5
bipush 10
imul
iload 7
iadd
istore 8
start local 8 68: aload 0
invokevirtual java.util.regex.Matcher.groupCount:()I
iload 8
if_icmpge 71
69: iconst_1
istore 6
70: goto 73
71: StackMap locals: int
StackMap stack:
iload 8
istore 5
72: iinc 3 1
end local 8 end local 7 73: StackMap locals:
StackMap stack:
iload 6
ifeq 62
end local 6 74: StackMap locals:
StackMap stack:
aload 0
iload 5
invokevirtual java.util.regex.Matcher.start:(I)I
iconst_m1
if_icmpeq 79
aload 0
iload 5
invokevirtual java.util.regex.Matcher.end:(I)I
iconst_m1
if_icmpeq 79
75: aload 2
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
aload 0
iload 5
invokevirtual java.util.regex.Matcher.start:(I)I
aload 0
iload 5
invokevirtual java.util.regex.Matcher.end:(I)I
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
pop
end local 5 76: goto 79
77: StackMap locals:
StackMap stack:
aload 2
iload 4
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
78: iinc 3 1
end local 4 79: StackMap locals:
StackMap stack:
iload 3
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 2
80: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 81 0 this Ljava/util/regex/Matcher;
0 81 1 replacement Ljava/lang/String;
0 81 2 result Ljava/lang/StringBuilder;
1 81 3 cursor I
3 79 4 nextChar C
21 76 5 refNum I
24 53 6 gsb Ljava/lang/StringBuilder;
41 53 7 gname Ljava/lang/String;
61 74 6 done Z
65 73 7 nextDigit I
68 73 8 newRefNum I
MethodParameters:
Name Flags
replacement
result
public java.lang.StringBuffer appendTail(java.lang.StringBuffer);
descriptor: (Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
aload 0
getfield java.util.regex.Matcher.lastAppendPosition:I
aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuffer;
pop
1: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/regex/Matcher;
0 2 1 sb Ljava/lang/StringBuffer;
MethodParameters:
Name Flags
sb
public java.lang.StringBuilder appendTail(java.lang.StringBuilder);
descriptor: (Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
aload 0
getfield java.util.regex.Matcher.lastAppendPosition:I
aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
pop
1: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/regex/Matcher;
0 2 1 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
sb
public java.lang.String replaceAll(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
1: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
istore 2
start local 2 2: iload 2
ifeq 9
3: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 4: StackMap locals: int java.lang.StringBuilder
StackMap stack:
aload 0
aload 3
aload 1
invokevirtual java.util.regex.Matcher.appendReplacement:(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;
pop
5: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
istore 2
6: iload 2
ifne 4
7: aload 0
aload 3
invokevirtual java.util.regex.Matcher.appendTail:(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
8: aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 9: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/regex/Matcher;
0 10 1 replacement Ljava/lang/String;
2 10 2 result Z
4 9 3 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
replacement
public java.lang.String replaceAll(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>);
descriptor: (Ljava/util/function/Function;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
2: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
istore 2
start local 2 3: iload 2
ifeq 14
4: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 5: StackMap locals: int java.lang.StringBuilder
StackMap stack:
aload 0
getfield java.util.regex.Matcher.modCount:I
istore 4
start local 4 6: aload 1
aload 0
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 7: iload 4
aload 0
getfield java.util.regex.Matcher.modCount:I
if_icmpeq 9
8: new java.util.ConcurrentModificationException
dup
invokespecial java.util.ConcurrentModificationException.<init>:()V
athrow
9: StackMap locals: int java.lang.String
StackMap stack:
aload 0
aload 3
aload 5
invokevirtual java.util.regex.Matcher.appendReplacement:(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;
pop
10: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
istore 2
end local 5 end local 4 11: iload 2
ifne 5
12: aload 0
aload 3
invokevirtual java.util.regex.Matcher.appendTail:(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
13: aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/regex/Matcher;
0 15 1 replacer Ljava/util/function/Function<Ljava/util/regex/MatchResult;Ljava/lang/String;>;
3 15 2 result Z
5 14 3 sb Ljava/lang/StringBuilder;
6 11 4 ec I
7 11 5 replacement Ljava/lang/String;
Signature: (Ljava/util/function/Function<Ljava/util/regex/MatchResult;Ljava/lang/String;>;)Ljava/lang/String;
MethodParameters:
Name Flags
replacer
public java.util.stream.Stream<java.util.regex.MatchResult> results();
descriptor: ()Ljava/util/stream/Stream;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.regex.Matcher$1MatchResultIterator
dup
aload 0
invokespecial java.util.regex.Matcher$1MatchResultIterator.<init>:(Ljava/util/regex/Matcher;)V
sipush 272
1: invokestatic java.util.Spliterators.spliteratorUnknownSize:(Ljava/util/Iterator;I)Ljava/util/Spliterator;
2: iconst_0
3: invokestatic java.util.stream.StreamSupport.stream:(Ljava/util/Spliterator;Z)Ljava/util/stream/Stream;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/regex/Matcher;
Signature: ()Ljava/util/stream/Stream<Ljava/util/regex/MatchResult;>;
public java.lang.String replaceFirst(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
ldc "replacement"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
3: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
ifne 5
4: aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
5: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 6: aload 0
aload 2
aload 1
invokevirtual java.util.regex.Matcher.appendReplacement:(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;
pop
7: aload 0
aload 2
invokevirtual java.util.regex.Matcher.appendTail:(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
8: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/regex/Matcher;
0 9 1 replacement Ljava/lang/String;
6 9 2 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
replacement
public java.lang.String replaceFirst(java.util.function.Function<java.util.regex.MatchResult, java.lang.String>);
descriptor: (Ljava/util/function/Function;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
2: aload 0
invokevirtual java.util.regex.Matcher.find:()Z
ifne 4
3: aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
4: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 5: aload 0
getfield java.util.regex.Matcher.modCount:I
istore 3
start local 3 6: aload 1
aload 0
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 7: iload 3
aload 0
getfield java.util.regex.Matcher.modCount:I
if_icmpeq 9
8: new java.util.ConcurrentModificationException
dup
invokespecial java.util.ConcurrentModificationException.<init>:()V
athrow
9: StackMap locals: java.lang.StringBuilder int java.lang.String
StackMap stack:
aload 0
aload 2
aload 4
invokevirtual java.util.regex.Matcher.appendReplacement:(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/regex/Matcher;
pop
10: aload 0
aload 2
invokevirtual java.util.regex.Matcher.appendTail:(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
pop
11: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/util/regex/Matcher;
0 12 1 replacer Ljava/util/function/Function<Ljava/util/regex/MatchResult;Ljava/lang/String;>;
5 12 2 sb Ljava/lang/StringBuilder;
6 12 3 ec I
7 12 4 replacement Ljava/lang/String;
Signature: (Ljava/util/function/Function<Ljava/util/regex/MatchResult;Ljava/lang/String;>;)Ljava/lang/String;
MethodParameters:
Name Flags
replacer
public java.util.regex.Matcher region(int, int);
descriptor: (II)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iflt 1
iload 1
aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
if_icmple 2
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
ldc "start"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 2
iflt 3
iload 2
aload 0
invokevirtual java.util.regex.Matcher.getTextLength:()I
if_icmple 4
3: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
ldc "end"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iload 1
iload 2
if_icmple 6
5: new java.lang.IndexOutOfBoundsException
dup
ldc "start > end"
invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.regex.Matcher.reset:()Ljava/util/regex/Matcher;
pop
7: aload 0
iload 1
putfield java.util.regex.Matcher.from:I
8: aload 0
iload 2
putfield java.util.regex.Matcher.to:I
9: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/regex/Matcher;
0 10 1 start I
0 10 2 end I
MethodParameters:
Name Flags
start
end
public int regionStart();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.from:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public int regionEnd();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.to:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public boolean hasTransparentBounds();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.transparentBounds:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public java.util.regex.Matcher useTransparentBounds(boolean);
descriptor: (Z)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield java.util.regex.Matcher.transparentBounds:Z
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/regex/Matcher;
0 2 1 b Z
MethodParameters:
Name Flags
b
public boolean hasAnchoringBounds();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.anchoringBounds:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public java.util.regex.Matcher useAnchoringBounds(boolean);
descriptor: (Z)Ljava/util/regex/Matcher;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield java.util.regex.Matcher.anchoringBounds:Z
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/regex/Matcher;
0 2 1 b Z
MethodParameters:
Name Flags
b
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: aload 1
ldc "java.util.regex.Matcher"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: ldc "[pattern="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.util.regex.Matcher.pattern:()Ljava/util/regex/Pattern;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc " region="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
4: aload 0
invokevirtual java.util.regex.Matcher.regionStart:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 44
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.util.regex.Matcher.regionEnd:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
5: ldc " lastmatch="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 0
getfield java.util.regex.Matcher.first:I
iflt 8
aload 0
invokevirtual java.util.regex.Matcher.group:()Ljava/lang/String;
ifnull 8
7: aload 1
aload 0
invokevirtual java.util.regex.Matcher.group:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 1
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/regex/Matcher;
1 10 1 sb Ljava/lang/StringBuilder;
public boolean hitEnd();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.hitEnd:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
public boolean requireEnd();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.requireEnd:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
boolean search(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
putfield java.util.regex.Matcher.hitEnd:Z
1: aload 0
iconst_0
putfield java.util.regex.Matcher.requireEnd:Z
2: iload 1
ifge 3
iconst_0
goto 4
StackMap locals:
StackMap stack:
3: iload 1
StackMap locals:
StackMap stack: int
4: istore 1
5: aload 0
iload 1
putfield java.util.regex.Matcher.first:I
6: aload 0
aload 0
getfield java.util.regex.Matcher.oldLast:I
ifge 7
iload 1
goto 8
StackMap locals:
StackMap stack: java.util.regex.Matcher
7: aload 0
getfield java.util.regex.Matcher.oldLast:I
StackMap locals: java.util.regex.Matcher int
StackMap stack: java.util.regex.Matcher int
8: putfield java.util.regex.Matcher.oldLast:I
9: iconst_0
istore 2
start local 2 10: goto 13
11: StackMap locals: int
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 2
iconst_m1
iastore
12: iinc 2 1
StackMap locals:
StackMap stack:
13: iload 2
aload 0
getfield java.util.regex.Matcher.groups:[I
arraylength
if_icmplt 11
end local 2 14: iconst_0
istore 2
start local 2 15: goto 19
16: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 2
aaload
ifnull 18
17: aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 2
aaload
invokevirtual java.util.regex.IntHashSet.clear:()V
18: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
19: iload 2
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
arraylength
if_icmplt 16
end local 2 20: aload 0
iconst_0
putfield java.util.regex.Matcher.acceptMode:I
21: aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
getfield java.util.regex.Pattern.root:Ljava/util/regex/Pattern$Node;
aload 0
iload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
istore 2
start local 2 22: iload 2
ifne 24
23: aload 0
iconst_m1
putfield java.util.regex.Matcher.first:I
24: StackMap locals: java.util.regex.Matcher int int
StackMap stack:
aload 0
aload 0
getfield java.util.regex.Matcher.last:I
putfield java.util.regex.Matcher.oldLast:I
25: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
26: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Ljava/util/regex/Matcher;
0 27 1 from I
10 14 2 i I
15 20 2 i I
22 27 2 result Z
MethodParameters:
Name Flags
from
boolean match(int, int);
descriptor: (II)Z
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_0
putfield java.util.regex.Matcher.hitEnd:Z
1: aload 0
iconst_0
putfield java.util.regex.Matcher.requireEnd:Z
2: iload 1
ifge 3
iconst_0
goto 4
StackMap locals:
StackMap stack:
3: iload 1
StackMap locals:
StackMap stack: int
4: istore 1
5: aload 0
iload 1
putfield java.util.regex.Matcher.first:I
6: aload 0
aload 0
getfield java.util.regex.Matcher.oldLast:I
ifge 7
iload 1
goto 8
StackMap locals:
StackMap stack: java.util.regex.Matcher
7: aload 0
getfield java.util.regex.Matcher.oldLast:I
StackMap locals: java.util.regex.Matcher int int
StackMap stack: java.util.regex.Matcher int
8: putfield java.util.regex.Matcher.oldLast:I
9: iconst_0
istore 3
start local 3 10: goto 13
11: StackMap locals: int
StackMap stack:
aload 0
getfield java.util.regex.Matcher.groups:[I
iload 3
iconst_m1
iastore
12: iinc 3 1
StackMap locals:
StackMap stack:
13: iload 3
aload 0
getfield java.util.regex.Matcher.groups:[I
arraylength
if_icmplt 11
end local 3 14: iconst_0
istore 3
start local 3 15: goto 19
16: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 3
aaload
ifnull 18
17: aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
iload 3
aaload
invokevirtual java.util.regex.IntHashSet.clear:()V
18: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
19: iload 3
aload 0
getfield java.util.regex.Matcher.localsPos:[Ljava/util/regex/IntHashSet;
arraylength
if_icmplt 16
end local 3 20: aload 0
iload 2
putfield java.util.regex.Matcher.acceptMode:I
21: aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
getfield java.util.regex.Pattern.matchRoot:Ljava/util/regex/Pattern$Node;
aload 0
iload 1
aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokevirtual java.util.regex.Pattern$Node.match:(Ljava/util/regex/Matcher;ILjava/lang/CharSequence;)Z
istore 3
start local 3 22: iload 3
ifne 24
23: aload 0
iconst_m1
putfield java.util.regex.Matcher.first:I
24: StackMap locals: java.util.regex.Matcher int int int
StackMap stack:
aload 0
aload 0
getfield java.util.regex.Matcher.last:I
putfield java.util.regex.Matcher.oldLast:I
25: aload 0
dup
getfield java.util.regex.Matcher.modCount:I
iconst_1
iadd
putfield java.util.regex.Matcher.modCount:I
26: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Ljava/util/regex/Matcher;
0 27 1 from I
0 27 2 anchor I
10 14 3 i I
15 20 3 i I
22 27 3 result Z
MethodParameters:
Name Flags
from
anchor
int getTextLength();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.length:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
java.lang.CharSequence getSubSequence(int, int);
descriptor: (II)Ljava/lang/CharSequence;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
iload 1
iload 2
invokeinterface java.lang.CharSequence.subSequence:(II)Ljava/lang/CharSequence;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
0 1 1 beginIndex I
0 1 2 endIndex I
MethodParameters:
Name Flags
beginIndex
endIndex
char charAt(int);
descriptor: (I)C
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield java.util.regex.Matcher.text:Ljava/lang/CharSequence;
iload 1
invokeinterface java.lang.CharSequence.charAt:(I)C
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/regex/Matcher;
0 1 1 i I
MethodParameters:
Name Flags
i
int getMatchedGroupIndex(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "Group name"
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: aload 0
getfield java.util.regex.Matcher.first:I
ifge 3
2: new java.lang.IllegalStateException
dup
ldc "No match found"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
invokevirtual java.util.regex.Pattern.namedGroups:()Ljava/util/Map;
aload 1
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 5
4: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "No group with name <"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ">"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield java.util.regex.Matcher.parentPattern:Ljava/util/regex/Pattern;
invokevirtual java.util.regex.Pattern.namedGroups:()Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/util/regex/Matcher;
0 6 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
}
SourceFile: "Matcher.java"
NestMembers:
java.util.regex.Matcher$1MatchResultIterator java.util.regex.Matcher$ImmutableMatchResult
InnerClasses:
MatchResultIterator = java.util.regex.Matcher$1MatchResultIterator
private ImmutableMatchResult = java.util.regex.Matcher$ImmutableMatchResult of java.util.regex.Matcher
Node = java.util.regex.Pattern$Node of java.util.regex.Pattern