我有2个不同的单词:
BB50AR-B0N5-001-UNI
F361424500
在第一种情况下,-
在这里,我希望第一个组为BB50AR-B0N5-001
,即最后一个组不应该来
在第二种情况下-
不存在的情况下,我希望第一组为F361424500
我的尝试:
([\w]+)([-]?)(.*?)($)
上面的正则表达式给出相反的含义
答案 0 :(得分:3)
您可以使用:^(.+?)(?:-[^-]+?)?$
使用:
^
:字符串的开头(.+?)
:捕获组,具有:
.+?
:任意字符,一次或无限次,非贪婪(?:-[^-]+?)?
:0或1次非捕获组,具有:
-[^-]+?
:一个-
,-
以外的任何内容(一次或无限次),非贪婪$
:字符串的结尾答案 1 :(得分:3)