我想从输入字段中获取字符串,然后格式化并清理它。
我想要得到的字符串是自然数,用逗号分隔,没有任何空格。首先我想删除所有空格和最后一个逗号。我的意思是,如果格式化的字符串不符合我想要的,我希望它返回空字符串。
//OK examples(without any spaces)
1,2,123,45,7
132,1,555,678
//NG examples
aaa,111,2365
1,2,123,45,7,
-1,2,123,45,7,,,
1, 2, 123, 45, 7
首先我想删除空格和最后一个逗号1,235,146,=〉1,235,146
我尝试了以下代码
$input = str_replace(' ', '', $input);
rtrim($input, ',');
if (preg_match('/^\d(?:,\d+)*$/', $input)) {
return $input;
}
return '';
如果字符串的最后一个逗号后面有空格,它返回空字符串。
1,2,123,45,7, => //returns empty string.
我想将此格式设置为"1,2,123,45,7"。
抱歉,我解释的太混乱了...
2条答案
按热度按时间jckbn6z71#
替换空格并修剪开头或结尾处的逗号和空格:
或者:
如果你只想要数字和逗号(没有字母等),也许:
但是,对于没有逗号的单个数字,这不会出错。
4jb9z9bj2#
用途
参见proof
解释
PHP语言: