正则表达式拆分字符串

时间:2017-02-16 08:58:32

标签: regex

我希望使用正则表达式分割字符串(并获取所有匹配项)。

我有以下字符串:

ppc.goo.gen.heat..jan-17.logo

它应该返回每个之间的所有内容。

[0] ppc
[1] goo
[2] gen
[3] heat
[4] 
[5] jan-17
[6] logo

到目前为止,我有这个:

([a-zA-Z0-9-]*)\.

哪个匹配0到5,但是它会错过匹配6,因为它没有。在末尾。我尝试使用lookahead,但我无法使用它。有什么提示吗?

1 个答案:

答案 0 :(得分:1)

(?:^|\.)([^\.]*)(?=\.|$)

第1组将成为参赛作品。

  • (?:^|\.)匹配字符串的开头,或.
  • ([^\.]*)匹配0个或更多非.字符
  • (?=\.|$)匹配.或字符串结尾