Java Regex替换功能无法按预期工作

时间:2014-08-10 21:49:28

标签: javascript regex

我需要一些JS Regex的帮助。

这里是我传递的字符串,我想在删除之前删除所有内容' Hanyuu-sama'用JS替换。

Hanyuu","dj":{"id":18,"djname":"Hanyuu-sama

第一个和第二个" Hanyuu"可以改变,身份证号码可以改变。这已经被正则表达式裁剪了很多。

现在我已经尝试了一些,当我做简单复杂的正则表达式时,它已经失败了:

我试过了:

.*\"

它什么也没做,我在绝望中尝试过令人作呕的东西:

.*\","dj\":{\"id":.*,\"djname\":\"

和nada。

这里有一个JS Fiddle和一个http://regex101.com/r/tE2uY0/1 Regex JS匹配平台。

有谁知道为什么这不起作用?

我知道这可能是不好的做法,我只是想学习正则表达式。

如果有人可以推荐我学习正则表达式的好来源,那么奖励积分。我喜欢一个解决方案,但我想在将来自己学习如何做到这一点以及为什么这个失败更多。

1 个答案:

答案 0 :(得分:2)

您的方法调用应如下所示:

source = source.replace(/.*"/, "");

javascript中的正则表达式写在/.../之间,而不是" /.../"就像他们有许多其他语言一样。

如果您的字符串总是这样构造,并且它不包含任何其他字符,那么您的正则表达式应该可以解决问题。这是因为*量词默认情况下贪婪,因此始终匹配最后一个"在字符串中。