作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 JS 替换当前页面的查询字符串中的某些值。例如:从 category=Old Value
到 category=New Value
。代码如下所示:
var sNewValue = 'New Value';
sQueryString = sQueryString.replace(/category=[^&]+&?/, 'category=' + sNewValue);
除了带有&符号的值之外,它工作正常。幸运的是,所有 & 符号都是 URL 编码的,所以我知道我应该丢弃 & 之前的 amp;。我想我应该使用前瞻,但我不知道如何。我尝试了这个正则表达式,但没有成功: /category=[^&(?!amp;)]+&?/
谢谢
最佳答案
为什么 & 符号被编码为 &而不是 %26?还是我读错了你的问题?
如果确实需要这样,那么如果您首先将其分解为名称/值对,那么处理此查询字符串可能会更容易。
var pairStrings = sQueryString.split(/&(?!amp;)/gi);
然后您可以使用每个值,而不必担心它是否包含编码的 & 。
关于Javascript RegExp 替换为负前瞻,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3761307/
我有一个看起来像这样的字符串: text = "9) 9 的文本\r\n10) 10 的文本\r\n11) 11 的文本\r\n12) ...\r\n123) 123 的文本" 我正在尝试将其拆分如下
下一代的 3D Tiles 前瞻 原文:Introducing 3D Tiles Next, Streaming Geospatial to the Metaverse 原文发布时间:2021年11月
我有一个使用正则表达式回顾的 string.replace() 函数。 myString.replace(/(?
我是一名优秀的程序员,十分优秀!