标签: php regex
我需要从" |"中捕获数字(ids)。分隔字符串, 这是一个示例字符串:
|98|34|2|{"flag":"CHART"}
这是似乎有用的表达式(对于第一个数字)
^\|(\d+)\|
问题是这只捕获了第一个数字。
我不知道如何使这个正则表达式重复,直到它到达" {"符号。 帮助将不胜感激!
请告诉我是否有更有效的方法(在php中)
答案 0 :(得分:1)
使用\G锚点在最后一场比赛停止的同一个字符串上开始下一场比赛。
\G
(?:^\||\G)\|?(\d+)(?=\|)
DEMO