正则表达式问题,避开第一个符号,得到第二个符号。

问题描述 投票:0回答:1

我有一个小问题。我试着从一个字符串中提取一些匹配信息,像这样。但我不知道该怎么做。谅谅

2+22 -> match1: 2; match2: 22

2-22 -> match1: 2; match2: 22

2++22 -> match1: 2; match2: +22

2+-22 -> match1: 2; match2: -22

regex string match expression
1个回答
1
投票

我不知道你使用的是什么语言,但是下面的内容似乎对那些使用PHPPCRE的测试用例有效。

(\d+)[+-]([+-]?\d+)

要分解它:

  • (\d+) 至少匹配一个数字,并将其归入第1组。
  • [+-] 正负一致
  • ([+-]?\d+) 匹配一个加号或减号或无,后面至少有一个数字。在第2组中捕捉全部内容。
© www.soinside.com 2019 - 2024. All rights reserved.