我试图抓住一个有各种形式的小组。
fc rgb
cardType=A&Return=True
cardType=AbC321
我现在的正则表达式是:
Return=False&cardType=C
这当前捕获了2和3,但不是1,因为在这种情况下它也捕获cardType=(?<Card Type>.*)&?
。
如果我改为:
Return
然后它正确捕获1,但不捕获2和3.
如何在所有3种情况下编写捕获它的正则表达式?
答案 0 :(得分:0)
使用:
cardType=(?<CardType>[^&\s]*)
两个重要的变化:
.*)&?
替换为[^&\s]*)
第二个变化更为重要。如果你这样做。*&amp ;?,则永远不会捕获&?
,因为.*
会带有&
个符号。在大多数情况下,最好通过将接受的字符范围限制为[^&\s]
来限制重复 - 除了空格或符号外的任何内容