1

我希望此文本匹配:

test123
id=125456

这是我的正则表达式不起作用:

([iI]{1,1}[dD]{1,1}=((d+).))|([A-Za-z0-9]*)

谁能告诉我我错过了什么?第二个样本不起作用。

4

2 回答 2

1

您需要使用\d+来匹配多个数字。 d+寻找重复字符d

...((\d+).))|(
     ^^ add \ in front of d

工作示例:http ://www.rubular.com/r/R8cxjZoG58

于 2012-09-10T14:11:03.623 回答
1

这可以解决问题: ([iI][dD]=\d+)|([A-Za-z0-9]*)

几点建议:

  • [iI]{1,1}可以替换为[iI]{1}and 因为 once 是默认设置,所以您可以{1}完全省略。
  • d+匹配字母“d”一次或多次,\d+匹配一位或多位数字。
于 2012-09-10T14:16:03.860 回答