function trim(input_)
{
var reg=/(^\s+|\s+$)/gi;
return input_.replace(reg, function(march){
return march.replace(/\s+/,"");
});
}
附replace的实现:
var GLOBAL = /(g|gi)$/;
var _String_replace = String.prototype.replace;
String.prototype.replace = function(expression, replacement) {
if (typeof replacement == "function") { // Safari doesn't like functions
if (expression && expression.constructor == RegExp) {
var regexp = expression;
var global = regexp.global;
//regexp.global 也不可靠?直接判断正则有没有g吧
if (global == null) global = GLOBAL.test(regexp);
// we have to convert global RexpExps for exec() to work consistently
//很精巧,即使是g 全局的也要剥离掉 ,使得全局不全局可以很统一和谐的对待
if (global) regexp = new RegExp(regexp.source); // non-global
} else {
regexp = new RegExp(rescape(expression));
}
var match, string = this, result = "";
while (string && (match = regexp.exec(string))) {
//匹配项替换后结果以及匹配前缀放入结果
result += string.slice(0, match.index) + replacement.apply(this, match);
//这样很好,不用像chrome那样还要记录 previous 的状态,直接把要正则匹配的字符 串截断。
string = string.slice(match.index + match[0].length);
//全局不全局只有这一个差别了
if (!global) break;
}
//最后一次匹配结束位置到字符串结尾
return result + string;
}
return _String_replace.apply(this, arguments);
};
分享到:
相关推荐
JavaScript正则表达式是编程语言JavaScript中用于处理字符串的强大工具,它可以用来进行各种复杂的文本匹配、替换和提取操作。在实战中,以下是一些常见的正则表达式应用场景及其详细解释: 1. **匹配结尾的数字**...
删除字符串前导空格.asp 删除字符串后导空格.asp 反向截取字符串.asp 反向查找字符串.asp 字符串倒序排列.asp 字符串大写转化.asp 字符串小写转化.asp ...
- `\s`:匹配任何空白字符,包括空格、制表符和换行符。 - `\S`:匹配任何非空白字符。 - `\d`:匹配数字,等同于 `[0-9]`。 - `\w`:匹配字母、数字或下划线,等同于 `[a-zA-Z0-9_]`。 - `\W`:匹配任何非`\w`的...
在JavaScript中,处理字符串时,我们经常需要去除字符串的前导空格、尾随空格或者两边的空格。这些空格可能是用户输入时无意间产生的,或者是在数据处理过程中添加的。本文将详细介绍几种JavaScript中去除字符串空格...
- **去掉前导和末尾的空格**:`^\s+|\s+$` - **0到999999之间的数字**:`[0-9]{1,6}` - **验证HTML十六进制编码**:`#[a-fA-F0-9]{6}` - **美国社会安全码**:`(\d{3}-\d{2}-\d{4})` - **美国邮政编码**:`(\d{5}(-\...
### JavaScript正则表达式详解 #### 一、正则表达式概述 正则表达式(Regular Expression),简称“regex”或“regexp”,是一种强大的模式匹配工具,在编程领域中被广泛应用于字符串搜索、替换以及提取等功能。它...
在前端开发中,我们经常需要处理用户输入的数据,这些数据可能会带有不必要的空白字符,比如前导空格、尾随空格,甚至多个连续的空格。因此,有效地去除这些空格是提高用户体验和数据处理效率的关键。 首先,让我们...
JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法. 在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp...
这样,只要调用这个trim()函数,就可以轻松去除字符串的前导和尾随空格。 而在去除字符串中所有空格(包括行间的空格)时,可以使用另一种正则表达式/\s*/g。这个表达式匹配字符串中所有的空白字符,不局限于行的...
JavaScript中的正则表达式是处理文本模式匹配的强大工具,它用于检查、...这些正则表达式可以广泛应用于各种JavaScript应用场景,如表单验证、数据清理和搜索过滤等。在实际开发中,可以根据具体需求进行调整和优化。
通过上述内容的学习,我们了解到正则表达式在JavaScript中的应用非常广泛,不仅可以用于数据的有效性验证,还可以用于文本的替换和子字符串的提取。熟练掌握正则表达式的各种元字符和限定符,可以帮助开发者更加高效...
- `\s`:匹配单个空白字符,包括空格、制表符和换行符等。 - `\S`:匹配非空白字符。 - `\d`:匹配任何数字。 - `\w`:匹配字母、数字或下划线。 - `\W`:匹配非字母、非数字或非下划线字符。 - `.`:匹配任何...
在JavaScript中,我们可以使用`RegExp`对象或正则表达式字面量来创建正则表达式,并利用其方法如`test()`、`exec()`来进行匹配测试和提取信息。例如: ```javascript let emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z...
正则表达式是处理文本数据的强大武器,掌握了基本语法和使用技巧后,便能在各种场景下高效地解决字符串匹配与处理的问题。无论是数据清洗、日志分析,还是复杂文本格式的解析,正则表达式都能提供灵活且强大的支持。
正则表达式(Regular Expression)是一种强大的模式匹配工具,广泛应用于各种编程语言中,包括JavaScript。它不仅可以用来验证数据的有效性,还可以实现文本的替换及从字符串中提取特定的子串。正则表达式的灵活性...
第三种方法将前两种方法的函数封装在一起,通过传递参数来控制是去除前导空格、尾部空格还是前后空格。这种方法提供了一定的灵活性,便于根据不同的需求选择不同的去除空格策略。 需要注意的是,在代码中提到了 `...
正则表达式是一种强大的文本处理工具,用于模式匹配和替换。它在各种编程语言和操作系统中广泛应用,如UNIX系统、JavaScript、Perl、PHP、awk、sed等。正则表达式的核心在于构建匹配模式,通过一系列特殊字符(元...