如何用一堆重复段来浓缩这个正则表达式?

时间:2014-11-26 10:47:46

标签: regex

我如何压缩这个?我尝试使用括号和/ 2,但似乎没有用。谁知道?这有点难看。

^(\$|)[A-Z0-9_\- ]*\t[0-9\.\-]*\t[0-9\.\-]*\t[0-9\.\-]*\t[0-9\.\-]*\t[0-9\.\-]*\t[0-9\.\-]*\t

我正在使用Perl 6.18兼容(我认为是.18)正则表达式引擎。

1 个答案:

答案 0 :(得分:1)

使用非捕获组和重复量词。

^(\$|)[A-Z0-9_\- ]*\t(?:[0-9\.\-]*\t){6}

OR

^\$?[-A-Z0-9_ ]*\t(?:[0-9.-]*\t){6}