5

我在 HTTP 请求中有如下响应

href="index.php?module=Meetings&action=DetailView&record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac">

我想获取“记录”的值,但是当我设置

Regular Expression : record=(.+?)

只返回“e”。我需要做什么?

4

2 回答 2

6

那么正则表达式消耗尽可能少(由于?)。因此,在接受第一个字符后就满足了。您可能应该让它变得贪婪并限制可能的字符(这样它就不能超过参数的末尾):

record=([a-f0-9-]+)

如果您不知道允许哪些字符作为参数的值,您也可以说,使用除 & 和引号之外的所有字符:

record=([^"'&]+)

根据您使用它的位置,您可能需要使用反斜杠转义其中一个引号。

于 2012-11-09T18:09:46.127 回答
0

给定的文本

href="index.php?module=Meetings&action=DetailView&record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac">

正则表达式从给定的文本值中获取记录值

record=(.+)"

正则表达式获取以下记录值

record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac"
于 2014-11-27T11:35:02.850 回答