RegEx用于验证特定输入

时间:2013-11-13 13:29:33

标签: regex

输入接受以下格式的数据:%'letter'separator%'letter'等等。

分隔符可以是:空格,制表符,冒号或换行符

示例:

%d %F %S   
or     
%d:%F:%S    
or    
%d:%F
%S

'%'后面的字符可以是任何字母

你写不出类似的东西:

%dddd %F %S
or 
%%d %F %S

到目前为止,我已经这样做了:

^((%([a-zA-Z]){1})+\s?|:)+$

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

怎么样

^((%[A-z])(\s|:))*(%[A-z])$

http://regexr.com?37626

答案 1 :(得分:1)

你可以使用这个

(%[a-zA-Z][ \t\n;])*%[a-zA-Z]

Regular expression visualization

但我建议将不区分大小写的标记传递给匹配器。然后表达式可以缩短为

(%[a-z][ \t\n;])*%[a-z]