正则表达式嵌入条件,我更喜欢称为条件查询,说白就是类似于高级程序语言的条件查询语句。下面分前后查找和回溯查找两种情况说明:
一、前后查找
说明 | 范例 |
---|---|
TEST STRING | hard hard- hard-working |
REGULAR EXPRESSION | \w{4}(?(?=-)-\w+) |
MATCH INFORMATION | hard hard- hard-working |
如上,?(?=-)表示向前查找,如果找到-,则匹配“-”及一串英文字符
二、回溯查找
说明 | 范例 |
---|---|
TEST STRING | (123)4567 123-4567 (123)-4567 |
REGULAR EXPRESSION | (<)?\d+(?(1)>|-)\d+ |
MATCH INFORMATION | <123>4567 123-4567 <123>-4567 |
如上,如果左边有括号则右边也匹配括号,如果左边没有则匹配“-”