JSFiddle - React, Tailwind, and code Playground

HTML

<input class="someInput" value="abcde"/>

JavaScript

$('.someInput').each(function(){
	this.lastVal = $(this).val();  // initially set last value
});

const validate = (pastedText) => pastedText.startsWith('a') ;

const findPastedText = (input) => {
	if(!input.lastVal)
  	return;
  
  let val = $(input).val();
  
  if(val.length < input.lastVal.length && input.lastVal.startsWith(val)) //something has been deleted 
  	return;
  
  let pastedText = '';
  
  for(let iVal = 0, iLast = 0; iVal < val.length; iVal++){
  	if(iLast > input.lastVal.length - 1){
    	pastedText += val.charAt(iVal);
      continue;
    }
    
    if(val.charAt(iVal) == input.lastVal.charAt(iLast) ){
    	iLast++;
      continue;
    }
    
    pastedText += val.charAt(iVal);
  }
  
  return pastedText;
};

$('.someInput').on('input', function() {
	 let pastedText = findPastedText(this);
   console.log(pastedText);
   if(!!pastedText && pastedText != '' && !validate(pastedText)){
      $(this).val(this.lastVal);
   }else{
   		 this.lastVal = $(this).val();
   }
});