在JavaScript中,使用String对象的replace方法时,会发现使用字符串直接量作为被替换对象时,只会替换第一个匹配的字符串,其余的匹配字符串保持不变。比如下面的代码,content中的第一个“营销”会被替换,但第二个不会:
var content = "营销管理系统,主要进行营销管理";
var replaced = content.replace("营销", "销售");
那么,要实现像Java中的String类的replaceAll那样进行全部替换要怎么做呢?答案是使用正则表达式进行字符串的全局替换。如下代码所示,实现了输入查找内容和替换后文本,然后执行全局替换。(注意使用了FreeMarker代码)
$("#replace_${comitem.comitemId}_${field.fieldId}").click(function(){
var content = $("#form${form.formId}_${field.fieldIdRow.sysName}").val();
if (content) {
var oldText = prompt("请输入查找内容:", "");
if (oldText) {
var newText = prompt("替换为:", oldText);
if (newText && newText != oldText) {
var replaced = content.replace(new RegExp(oldText, "g"), newText);
$("#form${form.formId}_${field.fieldIdRow.sysName}").val(replaced);
Eap.alert("已将【" + oldText + "】替换为【" + newText + "】");
}
}
}
});
你也可以看看下面这几篇文章:
(1) JS中实现replaceAll的方法(http://fuleonardo.iteye.com/blog/339749)
(2) JavaScript正则表达式:用String.replace()方法进行字符串替换
- 源文【JS正则表达式怎样实现Java中String.replaceAll的效果】最新版,请访问:
http://www.vktone.com/articles/js-regexp-replaceall.html
相关推荐
Java还提供了一些方便的方法来简化正则表达式的使用,如`String`类中的`matches()`、`replaceAll()`等方法。 ### JavaScript中的正则表达式实现 在JavaScript中,正则表达式通过`RegExp`对象实现。可以直接创建一...
因此,如果需要实现replaceAll效果,即替换字符串中所有匹配的子串,可以使用正则表达式配合replace()方法来实现。 正则表达式中的全局匹配标志(g)用于指示匹配操作应该在输入字符串中进行全局搜索,即查找到所有...
* `String` 类:提供了使用正则表达式的方法,例如 `matches()`、`replaceAll()` 等 例如,使用 `Pattern` 类编译正则表达式,并使用 `Matcher` 类匹配字符串: ```java import java.util.regex.Pattern; import ...
在Java 1.4及以后的版本中,你可以直接使用`String`类的`matches()`、`replaceAll()`和`split()`方法,这些方法都支持正则表达式。 ### 示例 ```java import java.util.regex.*; public class RegexExample { ...
在JavaScript中,RegExp对象是正则表达式的实现。创建RegExp对象有两种方式:一种是使用RegExp直接量语法,另一种是使用RegExp构造函数。直接量语法的格式为`/pattern/attributes`,而构造函数的格式为`new RegExp...
在Java中,正则表达式主要用于`java.util.regex`包中的`Pattern`、`Matcher`类以及`String`类的一些方法。本篇将深入探讨Java正则表达式的使用,不涉及JavaScript的相关内容。 1. **创建正则表达式对象**: 在Java...
* JavaScript正则表达式在线测试工具:http://tools.jb51.net/regex/javascript * 正则表达式在线生成工具:http://tools.jb51.net/regex/create_reg 这些工具可以帮助您测试和生成正则表达式,提高您的学习和使用...
1. 表单验证:在前端JavaScript中,可以使用正则表达式验证用户输入,如邮箱格式、手机号码等。 2. 后端数据过滤:在服务器端,通过正则表达式过滤非法输入,防止SQL注入等安全问题。 3. 数据提取:从HTML、XML等...
- MDN Web文档:提供详细的JavaScript正则表达式教程和API参考。 - Java官方文档:详述Java中的正则表达式支持。 - "正则表达式30分钟入门":快速上手的教程。 - "精通正则表达式":深入理解正则表达式的经典...
在Java中,自jdk1.4起,`java.util.regex`包提供了对正则表达式的支持,而`String`类中的`replaceAll`和`split`方法也依赖于正则表达式来完成功能。JavaScript中,正则表达式同样广泛应用,用于验证用户输入、处理...
在Java中,正则表达式是通过`java.util.regex`包提供的API来实现的。`Pattern`类用于编译正则表达式,`Matcher`类用于在目标字符串上执行匹配操作。例如,创建一个匹配邮箱地址的正则表达式: ```java Pattern ...
本篇文章将详细讲解如何在Java中实现这个功能。 1. **默认行为** 默认情况下,Java的正则表达式是区分大小写的。这意味着如果在正则表达式中定义了一个小写字母,它将不会匹配相应的大写字母,反之亦然。 2. **...
* JavaScript正则表达式在线测试工具:http://tools.jb51.net/regex/javascript * 正则表达式在线生成工具:http://tools.jb51.net/regex/create_reg 希望本文所述对大家Java程序设计有所帮助。
JavaScript中,`string.replace()`方法配合正则表达式可以实现相同的功能。例如,`str.replace(/\s+/g, " ")`将全局(`g`标志)替换所有连续的空白字符。 6. **Java中的正则操作** 在Java中,`java.util.regex....
为了更好地理解和测试正则表达式,可以使用在线的正则表达式测试工具,如文中提到的JavaScript正则表达式在线测试工具和在线生成工具。这些工具可以帮助你实时查看匹配结果,优化正则表达式,以满足特定的需求。 ...
在学习正则表达式时,可以借助一些在线工具进行练习和测试,如文中提到的JavaScript正则表达式在线测试工具和生成工具,它们可以帮助理解正则表达式的匹配规则和效果。通过不断地实践和尝试,你可以更熟练地掌握Java...
在Java中,正则表达式通常通过`java.util.regex`包中的类来实现,如`Pattern`和`Matcher`。`Pattern`类用于编译正则表达式,而`Matcher`类则负责在给定的输入字符串中应用这些模式。 RegexTest的使用流程大致如下:...
为了方便大家学习和使用正则表达式,本文提供了两个非常方便的正则表达式工具:JavaScript正则表达式在线测试工具和正则表达式在线生成工具。这些工具可以帮助大家快速学习和使用正则表达式。 Java String类正则...
本教程“正则学习demo”将重点介绍在Java和JavaScript这两种广泛使用的编程语言中如何运用正则表达式进行实际操作,特别是涉及到正则表达式的应用、代码统计以及邮箱地址的搜集。 1. 正则表达式基础 - **元字符**...