const/16\s+(\S+),\s+(\S+)((?!const)[\s\S])*?move.*\s+(\S+),\s+\1[\s\S]*?(invoke-static/range\s+(\{\4[^}]+\}),\s+Lru/App;->i\(([^)]*)\)(?:V|(\S+)\s+(\S+\s+(\S+))))


    const/16 v18, 0x9a5

move v0, v18



const/16 v18, 0x4fd


move/from16 v0, v18


move-object/from16 v1, v20

move-object/from16 v2, v21

move-object/from16 v16, v35

move-object/from16 v17, v36

invoke-static/range {v0 .. v17}, Lru/App;->i(ILjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;ZLjava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/ObjectLjava/lang/Object;

move-result-object v20



Применяю такую регулярку, к такому тексту. Хочу получить текст от const/16 v18 до move-result-object v20. А получаю от самого крайнего const/16 v18, нужно от самого ближайшего const/16 v18. Подскажите почему не работает, где ошибка ?









 ,






URL записи