Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Reqular表达式:是否用数字替换用户定义的格式?_Php_Regex - Fatal编程技术网

Php Reqular表达式:是否用数字替换用户定义的格式?

Php Reqular表达式:是否用数字替换用户定义的格式?,php,regex,Php,Regex,我想替换用户定义的格式,如 ABC-#####-09 到 ABC-0023-09 应该有多少前导零决定了有多少个“#”符号进入格式,以及要替换的默认值的长度(在本例中为23) 是否有任何正则表达式模式可以执行此操作 谢谢…这个怎么样 $num = 23; $format = 'ABC-####-09'; print preg_replace('/(#+)/e', 'str_pad($num, strlen("$1"), 0, STR_PAD_LEFT)', $format); 这个怎么样 $n

我想替换用户定义的格式,如

ABC-#####-09

ABC-0023-09

应该有多少前导零决定了有多少个“#”符号进入格式,以及要替换的默认值的长度(在本例中为23)

是否有任何正则表达式模式可以执行此操作

谢谢…

这个怎么样

$num = 23;
$format = 'ABC-####-09';
print preg_replace('/(#+)/e', 'str_pad($num, strlen("$1"), 0, STR_PAD_LEFT)', $format);
这个怎么样

$num = 23;
$format = 'ABC-####-09';
print preg_replace('/(#+)/e', 'str_pad($num, strlen("$1"), 0, STR_PAD_LEFT)', $format);

这应该在Javascript中工作:

function user_str_replace {

  var match = user_input.match(/#+/);
  var length = match.length;

  var str = your_number.toString();
  var newStr = "";
  for (var i = 0; i < length - str.length; i ++) {
    newStr = "0" + newStr;
  }
  newStr = newStr + str;

  return (newStr);
}
函数用户\u str\u替换{
var match=user_input.match(/#+/);
变量长度=match.length;
var str=您的_number.toString();
var newStr=“”;
对于(变量i=0;i
这应该可以在Javascript中使用:

function user_str_replace {

  var match = user_input.match(/#+/);
  var length = match.length;

  var str = your_number.toString();
  var newStr = "";
  for (var i = 0; i < length - str.length; i ++) {
    newStr = "0" + newStr;
  }
  newStr = newStr + str;

  return (newStr);
}
函数用户\u str\u替换{
var match=user_input.match(/#+/);
变量长度=match.length;
var str=您的_number.toString();
var newStr=“”;
对于(变量i=0;i
请务必提及您正在使用的技术请务必提及您正在使用的技术