我有这样的字符串:http://someurl.com?someparameter=dhws6sd6cvg
我希望用javascript正则表达式从第一个字母加到'='。有可能吗?
答案 0 :(得分:2)
您可以创建一个组,该组将匹配从开头到=
的所有单词。然后,您可以访问正则表达式组here。
类似于:^(.*?)=
应该产生以下组值:http://someurl.com?someparameter
。如果您想加入=
,请执行以下操作:^(.*?=)
答案 1 :(得分:2)
预先:如果您正在解析网址,则可能需要使用现有网址解析器之一或URI.js。
字符串的开头由^
表示,因此您的RegEx可能看起来像^([^=]+)
。这匹配了字符串开头的=
以外的所有内容。如果您只想要在?之后的部分,请尝试\?([^=]+)
。请注意,您只能通过这种方式获得第一个参数。
看看MDN解释RegExp。
答案 2 :(得分:2)
使用.*
会导致正则表达式重新跟踪,()
的使用会产生反向引用。因此我们可以使用它来捕获给定的字符串^[^=]+=
答案 3 :(得分:1)
此模式应匹配到=
:
.+?=