假设我得到了这一行:
|125148 Schalter f GLE GÜ 90/80Z nei PL 80 16AJ
并且想要匹配以下两部分:
- 125148
- Schalter f GLE GÜ 90/80Z nei PL 80
16AJ 可以用作“断点”,因此从数字后面的第一个字母到“断点”的任何内容都应该在组中匹配。
我以某种方式使用这个正则表达式 ^\|([0-9])+(.)+(?=\s+16AJ)
但我的第一组包含 8 个字符,我的第二组什么也不包含。
查看此demo
我在这里错过了什么?为什么我的第二组是空的?
最佳答案
^\|([0-9])+(.+)(?=\s+16AJ)
^^
您需要将量词放入捕获组中。
关于Java 正则表达式匹配组为空,即使它匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31808839/