我希望正则表达式允许1到100之间的数字值和一个百分比符号
有效样本: 0%, 100% 100, 0, 65%
无效样本:101、101%,100.1、65.6%,65.6
感谢您的帮助
答案 0 :(得分:1)
我不会讲正则表达式,但您说任何帮助将不胜感激,所以我去了:
bool Verify(string input)
{
input = input.Replace("%", ""); // if it contains % remove it
int value;
if (Int32.TryParse(input, out value)) //if the input can be converted into a number
{
if (value > 1 && value < 100) //and the value is in range
{
return true; //return true to confirm it
}
}
return false; //in any other case return false
}
答案 1 :(得分:0)
尝试一下:
find [directory] -type f \! -newer [certain_file]
它将允许^(0*100{1,1}\.?((?<=\.)0*)?%$)|(^0*[1-9]\d{0,1}\.?((?<=\.)\d*)?%)$
和65%
并丢弃100%
和65
答案 2 :(得分:0)
匹配0到100(含)之间的百分比。最多接受2个小数位。 例如:0%,100%,.17%
^( 100(?:\.0{1,2})? | 0*?\.\d{1,2} | \d{1,2}(?:\.\d{1,2})? )% $