Jenkins 验证字符串参数的长度和类型

Jenkins 验证字符串参数的长度和类型,jenkins,jenkins-pipeline,jenkins-groovy,Jenkins,Jenkins Pipeline,Jenkins Groovy,我有一个Jenkins验证参数,它以补丁号作为输入。我需要验证输入的参数是否是一个数字,并且长度应为8个字符。请共享此验证字符串参数的正则表达式,该参数同时验证这两个参数 谢谢你的帮助 如果字符串参数holdign patch VER存储在patchVer变量中 stage('Patch version validation') { sh ''' echo "$patchVer" | egrep -q '^[0-9]+$' if [ $? -eq 0 -a ${#patchVe

我有一个Jenkins验证参数,它以补丁号作为输入。我需要验证输入的参数是否是一个数字,并且长度应为8个字符。请共享此验证字符串参数的正则表达式,该参数同时验证这两个参数


谢谢你的帮助

如果字符串参数holdign patch VER存储在
patchVer
变量中

stage('Patch version validation')
{

  sh '''

  echo "$patchVer" | egrep -q '^[0-9]+$'

  if [ $? -eq 0 -a ${#patchVer} -eq 8 ]; then 
    echo "$patchVer is a number and of 8 digits"; 
  else 
    echo "$patchVer is not a number"; 
    exit 1
  fi
  '''
}

我会坚持使用groovy。假设您的参数是版本号

if ( (params.VERSION_NUMBER).length() == 8 && params.VERSION_NUMBER ==~ /[0-9]+/) {
    result = 'valid'
} else {
    result = 'Invalid'
}

或者,您可以将其全部堆积到单个正则表达式中,并使用
/[0-9]{8}/
跳过长度检查。

非常感谢您的输入。