+ -
当前位置:首页 → 问答吧 → 求助正则表达式问题

求助正则表达式问题

时间:2011-12-07

来源:互联网

请问去除字符串最后一位的点的正则表达式怎么写 如 3. 输出 3 3.25. 输出 3.25 3.25 输出 3.25

作者: torylf   发布时间: 2011-12-07

JScript code

var result = str.replace(/\.{1}$/,'');

作者: Legend1988   发布时间: 2011-12-07

引用 1 楼 legend1988 的回复:

JScript code

var result = str.replace(/\.{1}$/,'');


谢谢!不过这个不行呢,这个我试过,str=3.25的话 输出 3.

作者: torylf   发布时间: 2011-12-07

3.25. --> 3.25
3.25... --> 3.25
3.25..25 -- 3.25..25

str.replace(/[.]+$/,'');

作者: diky87688973   发布时间: 2011-12-07

引用 2 楼 torylf 的回复:

引用 1 楼 legend1988 的回复:

JScript code

var result = str.replace(/\.{1}$/,'');


谢谢!不过这个不行呢,这个我试过,str=3.25的话 输出 3.

.......我确认是正确的,楼主再试一下。

作者: Legend1988   发布时间: 2011-12-07

JScript code

<script>
    var s = "12.1...";
    var reg = /\.$/g;        //匹配最后一个点即可
        if(s.match(reg)){                
    var b = s.replace(reg,"");
    alert(b);
    }
</script>

作者: caoyishuai100   发布时间: 2011-12-07

HTML code
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>

</head>
<body>
    <script>
        function test(str){
            var reg = /\.*$/;
            return str.replace(reg, '');
        }
        var arr = ["3.", "3.25.", "3.25"];
        for(var i in arr){
            alert(test(arr[i]));
        }
    </script>
</body>
</html>

作者: axiheyhey   发布时间: 2011-12-07

引用 4 楼 legend1988 的回复:

引用 2 楼 torylf 的回复:

引用 1 楼 legend1988 的回复:

JScript code

var result = str.replace(/\.{1}$/,'');


谢谢!不过这个不行呢,这个我试过,str=3.25的话 输出 3.

.......我确认是正确的,楼主再试一下。


奇怪了,给str单独赋值是可以的,但是用JQUERY 获取了文本域中的字符串 就无效了

一:
JScript code

str = $(".textarea1").val();//假设 $(".textarea1").val()为""3.
alert("str="+str); //输出 3.
var newStr = str.replace(/\.{1}$/,''); //替换 
alert("newStr="+newStr);//输出 3.



二:

JScript code

str = "3."; //赋值3.
alert("str="+str); //输出3.
var newStr = str.replace(/\.{1}$/,'');//替换 
alert("newStr="+newStr);// 输出3




第二个直接赋值是可以替换掉. 第一个获取来的文本值无法替换点

作者: torylf   发布时间: 2011-12-07