正则表达式

发布于 2024-10-19 05:52:52 字数 273 浏览 5 评论 0原文

我必须替换 NSURL 中的以下内容:
a_token=lksjadfkj%2gf98273984

a_token=new_token

令牌可以采用以下形式:

a_token=989asaofiusaodifusa9f789asdofu&lat=43.3
a_token=lksjadfkj%2gf98273984

所以它要么以 & 结尾或结束线/什么也没有。

我该如何编写它的正则表达式?

谢谢!

I have to replace the following in a NSURL:
a_token=lksjadfkj%2gf98273984
with
a_token=new_token

a token can be in the follwing forms:

a_token=989asaofiusaodifusa9f789asdofu&lat=43.3
a_token=lksjadfkj%2gf98273984

So it either ends with & or end line/nothing.

How could I write the regex expression for it?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

且行且努力 2024-10-26 05:52:52

你可以试试:

[stringWithURL stringByReplacingOccurrencesOfRegex:@"(?<=a_token=)[^&]*"
                                        withString:@"new_token"];

我没有测试过。基本上,正则表达式使用后向断言来匹配 a_token=。后视不包含在匹配的文本中。然后,正则表达式匹配“零个或多个不是 & 的字符”。

You could try:

[stringWithURL stringByReplacingOccurrencesOfRegex:@"(?<=a_token=)[^&]*"
                                        withString:@"new_token"];

I haven't tested it. Basically, the regex uses a look-behind assertion to match a_token=. The look-behind is not included in the text that is matched. Then, the regex matches "zero or more characters that aren't &".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文