正则表达式有3个子串

时间:2017-08-15 22:29:03

标签: regex

我正在寻找匹配以下字符串的正则表达式:

node-primary-backup-2017-08-10-15
node-secondary-backup-2017-06-12-32
node-secondary-backup-2017-08-11-24
node-primary-backup-2017-07-13-02
...

我尝试了以下操作,但它无法正常工作:

node-(?=primary|secondary)-backup-\d+-\d+-\d+-\d+

感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

表达式(?=primary|secondary)向前看,它声明紧跟当前位置的字符与指定的表达式匹配,但它不消耗任何输入。

您的表达式要求-backup-\d+-\d+-\d+-\d+匹配(primary|secondary),这当然是不可能的。

只需删除?=即可使其成为简单的替换表达式:

node-(primary|secondary)-backup-\d+-\d+-\d+-\d+