javascript replace()方法的简单分析
2008-11-26 00:00
344 查看
replace()最简单的算是能力就是简单的字符替换。示例代码如下:
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace("a","A"));
</script>
我想大家运行后可以看到结果,它只替换了首字母。但如果加上正则表达式结果就不一样了!呵呵,没错。replace()支持正则表达式,它可以按照正则表达式的规则匹配字符或字符串,然后给予替换!
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace(/a/,"A"));
</script>
呵呵,您一定发现了。这样还是只替换了第一个字母a。如果您熟悉正则,那这就难不住您。稍加修改就OK了。
<script language="javascript">
var strM = "javascript is a good script language";
//在此将字母a全部替换成字母A
alert(strM.replace(/a/g,"A"));
</script>
还可以这样,看看效果!
<script language="javascript">
var strM = "javascript is a good script language";
alert(strM.replace(/(javascript)\s*(is)/g,"$1 $2 fun. it $2"));
</script>
我这儿举的例子都是很简单的应用,replace()在此点上与您使用正则表达式的能力成正比。您正则表达式越强,呵呵,那您就会越疯狂的爱上它。
当然,我这儿推荐replace()的原因并不因为它能与正则表达式合作,而在于它还能与函数进行合作,发挥出强大的功能。
先看看简单例子:将所有单词首字母换成大写。
var strM = "javascript is a good script language";
function change(word)
{
return word.indexOf(0).toUpperCase()+word.substring(1);
}
alert(strM.replace(/\b\w+\b/g,change));
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
由上可知,当正则表达式有"g"标志时,代表将处理整个字符串,即函数change的变换将应用于所有匹配的对象。而该函数有三个或更多参数,具体个数视正则表达式而定。
有了函数与正则表达式的配合,replace()处理字符串的功能空前强大起来了!
最后还举个例子,将字符串所有单词倒序,用replace()处理是如此简单。
var strM = "javascript is a good script language";
function change(word)
{
var result = word.match(/(\w)/g);
if ( result )
{
var str = "";
for ( var i=result.length-1; i>=0; i-- )
{
str += result;
}
return str;
}
else
{
return "null";
}
}
alert(strM.replace(/\b(\w)+\b/g,change));
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace("a","A"));
</script>
我想大家运行后可以看到结果,它只替换了首字母。但如果加上正则表达式结果就不一样了!呵呵,没错。replace()支持正则表达式,它可以按照正则表达式的规则匹配字符或字符串,然后给予替换!
<script language="javascript">
var strM = "javascript is a good script language";
//在此我想将字母a替换成字母A
alert(strM.replace(/a/,"A"));
</script>
呵呵,您一定发现了。这样还是只替换了第一个字母a。如果您熟悉正则,那这就难不住您。稍加修改就OK了。
<script language="javascript">
var strM = "javascript is a good script language";
//在此将字母a全部替换成字母A
alert(strM.replace(/a/g,"A"));
</script>
还可以这样,看看效果!
<script language="javascript">
var strM = "javascript is a good script language";
alert(strM.replace(/(javascript)\s*(is)/g,"$1 $2 fun. it $2"));
</script>
我这儿举的例子都是很简单的应用,replace()在此点上与您使用正则表达式的能力成正比。您正则表达式越强,呵呵,那您就会越疯狂的爱上它。
当然,我这儿推荐replace()的原因并不因为它能与正则表达式合作,而在于它还能与函数进行合作,发挥出强大的功能。
先看看简单例子:将所有单词首字母换成大写。
var strM = "javascript is a good script language";
function change(word)
{
return word.indexOf(0).toUpperCase()+word.substring(1);
}
alert(strM.replace(/\b\w+\b/g,change));
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
由上可知,当正则表达式有"g"标志时,代表将处理整个字符串,即函数change的变换将应用于所有匹配的对象。而该函数有三个或更多参数,具体个数视正则表达式而定。
有了函数与正则表达式的配合,replace()处理字符串的功能空前强大起来了!
最后还举个例子,将字符串所有单词倒序,用replace()处理是如此简单。
var strM = "javascript is a good script language";
function change(word)
{
var result = word.match(/(\w)/g);
if ( result )
{
var str = "";
for ( var i=result.length-1; i>=0; i-- )
{
str += result;
}
return str;
}
else
{
return "null";
}
}
alert(strM.replace(/\b(\w)+\b/g,change));
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
相关文章推荐
- 一个 Linux 上分析死锁的简单方法
- 简单总结一下mysql的性能分析方法,陆续更新
- go语言日志记录库简单使用方法实例分析
- 对javascript中replace()方法的简单分析
- 一个 Linux 上分析死锁的简单方法
- Collections中sort()方法源代码的简单分析
- 三行代码实现.NET MVC统计显示页面的执行时间 超简单的实现方法 分析页面执行效率
- Nubia Z5S官方4.4 UI2.0音频Audio部分简单分析(也适用于其它8974/8064机型)以及降低破音出现几率的方法
- 流氓软件ErrorSafe的简单分析清除方法与其他
- C#中异常:“The type initializer to throw an exception(类型初始值设定项引发异常)”的简单分析与解决方法
- [Mac] R入门 三 基础数据分析的一些简单方法
- javascript replace()方法的简单分析
- thinkPHP简单遍历数组方法分析
- 对netlink无法检测到dellink事件和探测网卡是否插网线方法的简单分析
- Collections中sort()方法源代码的简单分析
- CSS相册简单实现方法(功能分析及代码)
- 关于成本核算方法、步骤、成本分析的简单回复
- 一个 Linux 上分析死锁的简单方法
- JS简单实现数组去重的方法分析
- iOS分析UI利器—Reveal及简单破解方法