伙计们,我有以下数据:
有效数据:
08902-00243
08902-00243-1
08902-00243-12
无效数据:
08902-002
cat
08902-00243-844
08902-0024A-
08902-0024A-45
08902-00243-
我正在尝试创建一个正则表达式来验证上述数据:
\d{5}-\d{5}-\d{2}?
但是我不能让可选(?)工作。
任何帮助都将不胜感激。
感谢。
答案 0 :(得分:1)
您需要添加-
,并且还有一个范围可以说明最后一组中的1位数。
echo "08902-00243-12" | egrep -o "\d{5}-\d{5}(-\d{1,2})?$"
答案 1 :(得分:0)
您需要将最后一个组合到可选项中:
\d{5}-\d{5}(-\d{1,2})?
答案 2 :(得分:0)