parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

без PCRE (=

AK666 19.12.2022 21:27

@masking[aSource][locals;result]
  $lResult[^aSource.mid(0;1)]
  $lDot(0)
  $lRes[$.src[$aSource]]
  ^while(^aSource.pos[.](${lDot}+1)>-1){
    $lDot(^aSource.pos[.](${lDot}+1))
    ^if(^lResult.length[] == $lDot){ ^continue[] }

    ^if($lDot == ^aSource.length[]-2
      ||$lDot == ^aSource.length[]-3
    ){
      $lResult[${lResult}^for[i](^lResult.length[];${lDot}-2){*}^aSource.mid(${lDot}-1)]
    }{
      $lResult[${lResult}^for[i](^lResult.length[];${lDot}-2){*}^aSource.mid(${lDot}-1;3)] ^rem{^aSource.mid(${lDot}+2)]}
    }

  }
  ^if(^lResult.length[] < ^aSource.length[]){
    $lResult[${lResult}^for[i](^lResult.length[];^aSource.length[]-2){*}^aSource.mid(^aSource.length[]-1;1)]  
  }
  
  $result[$lResult]
#masking