Regex 将字符串捕获到一个字符,但不包括该字符

Regex 将字符串捕获到一个字符,但不包括该字符,regex,Regex,使用字符串http://stackoverflow.com/questions/ask?hello=world,您可以使用/^.+\?/捕获http://stackoverflow.com/questions/ask?。我怎样才能捕获http://stackoverflow.com/questions/ask将正则表达式中与所需字符串匹配的部分括在括号中,并使用组检索该部分 /(^.+)\?/ 组1将包含除尾随的?之外的整个匹配字符串。请使用此正则表达式/^.+(?=\?)/您可以使用^[^

使用字符串
http://stackoverflow.com/questions/ask?hello=world
,您可以使用
/^.+\?/
捕获
http://stackoverflow.com/questions/ask?
。我怎样才能捕获
http://stackoverflow.com/questions/ask

将正则表达式中与所需字符串匹配的部分括在括号中,并使用组检索该部分

 /(^.+)\?/

组1将包含除尾随的

之外的整个匹配字符串。请使用此正则表达式
/^.+(?=\?)/
您可以使用
^[^?]+

这将捕获,直到找到问号,但问号不会出现在结果中


.

您使用的是什么语言?如果您使用的是PHP,那么可以使用内置函数解析URL的各个部分。使用现有的、可运行的、经过测试的代码比使用自己的代码要好。这不是一个真正的URL特定问题,这个示例对于理解URL非常有用。我真的很想知道如何捕捉一个角色,但不是这个角色。