Regex未替换字符串中的斜杠
Regex not replacing slash in string
我刚刚创建了一个字符串,它应该替换以#
开头的单词。我成功地做到了这一点,但一旦我在字符串中的#后面添加斜杠,它就会替换它。这是我的代码
<script>
var messageString = "The folder #/folder_name was removed from the workspace #workspace_name by #user_name"
result = messageString.replace(/#('w+)/g, function(_, $1) { return " HELLO"; })
alert(result );
</script>
我的问题是,当我在#后面添加斜杠时,为什么它不起作用,以及如何替换有/的单词。提前感谢
您需要将斜杠作为要匹配的有效字符的一部分,一种方法是将['/]
与其他字符一起使用,看起来像:
messageString.replace(/#(['/'w]+)/g,
请记住,'w
表示[a-zA-Z_]
例如,['/'w]+
等于['/a-zA-Z_]
您可以使用:
result = messageString.replace(/#('S+)/g, function(_, $1) { return " HELLO"; })
'w
是一个与/
不匹配的单词字符,因此正则表达式失败。'S
将与任何非空格字符相匹配。
相关文章:
- 字符串替换-不支持格式字符'}'
- Unicode字符串替换不适用于完整的变音符号阿拉伯文本
- Javascript 将字符串替换为
返回为空 - 字符串替换只替换第一个匹配项,可以'不要让它全球化
- javascript字符串替换$1(如果它是某个值)
- 字符串替换正则表达式,开头为空格
- 将 url 中的一个字符串替换为另一个字符串
- 在HTML文本框中查找某些子字符串,然后用其他字符串替换它们
- 我想使用replace函数扫描json对象,然后用字符串替换匹配的单词
- 字符串替换为从右向左的语言(阿拉伯语)
- 将字符串替换为用户键入的文本
- 字符串替换javascript
- JavaScript 将多行字符串替换为多行字符串
- Javascript字符串替换不起作用
- 字符串替换不'当通过android webView JavascriptInterface传递字符串时无法工作
- 我正在尝试用另一个字符串替换一个字符串
- 字符串替换最后一个字符出现的斜杠
- 将具有的字符串替换为$
- 基于查询字符串替换HTML
- Javascript字符串替换在满足长度而不是instantanoeus之前不会生效