Javascript 使用or运算符匹配字符串的一部分

Javascript 使用or运算符匹配字符串的一部分,javascript,regex,Javascript,Regex,URL字符串可能如下所示: http://test.com/index.php?page=xxx&item=51 或 或 我将如何捕获wordxxx 试过这样的方法: url_string.match(/\b\?page\=(.*)(\&|$)/) var matches = url_string.match(/\?page=([^&\n]*)/i); 通常,*进行贪婪匹配,您需要在*之后添加一个不情愿的量词?,以进行尽可能短的匹配 url_string.match

URL字符串可能如下所示:

http://test.com/index.php?page=xxx&item=51

我将如何捕获wordxxx

试过这样的方法:

url_string.match(/\b\?page\=(.*)(\&|$)/)
var matches = url_string.match(/\?page=([^&\n]*)/i);

通常,
*
进行贪婪匹配,您需要在
*
之后添加一个不情愿的量词
,以进行尽可能短的匹配

url_string.match(/\?page\=(.*?)(?:\&|$)/gm)
组索引1包含
页的值


通常
*
进行贪婪匹配,您需要在
*
之后添加一个不情愿的量词
,以进行尽可能短的匹配

url_string.match(/\?page\=(.*?)(?:\&|$)/gm)
组索引1包含
页的值

您可以使用:

url\u string.match(/\?page=([^&]+)/)

您可以使用:

url\u string.match(/\?page=([^&]+)/)


您可以像这样简化正则表达式:

url_string.match(/\b\?page\=(.*)(\&|$)/)
var matches = url_string.match(/\?page=([^&\n]*)/i);

您可以像这样简化正则表达式:

url_string.match(/\b\?page\=(.*)(\&|$)/)
var matches = url_string.match(/\?page=([^&\n]*)/i);

您也不需要
\b
。您也不需要
\b
。请参阅更新的正则表达式。此外,您在演示中看到的内容只能出现在多行文本中,而单个URL则不会出现这种情况。但是我确实更新了它来处理它。请参阅更新的正则表达式。此外,您在演示中看到的内容只能出现在多行文本中,而单个URL则不会出现这种情况。但是我确实更新了它来处理它。