我正在尝试创建一个正则表达式,以匹配我的字符串的开头几个替代品。
/
,则匹配^[a-zA-Z\-]
/
,则匹配^[\w]
,直到第一次出现/
的示例:
__Gi0__/0/0/0
__BVI__10
需要返回匹配项,因此我想将其包装在()
我试过这些
([a-zA-Z]+)|([\-\w]{2,}/)
但它不符合第二种情况。
有什么建议吗?
我的awk版本是GNU Awk 4.0.0
答案 0 :(得分:2)
你可以简单地这样做:
^((\w+)\/|([a-zA-Z_-]+))
第二个捕获的组包含您想要的内容。
或者如@Jenny建议的那样,你可以按照以下方式使第一组不捕获:
^(?:(\w+)\/|([a-zA-Z_-]+))