我有 RTRIM; 如何使用正则表达式制作 LTRIM

发布于 2024-07-13 08:53:10 字数 177 浏览 3 评论 0原文

我有 RTRIM; 如何使 LTRIM 成为一个?

公共静态函数 rtrim(string:String):String
{
return string.replace(/\s+$/,"");
}

I have RTRIM; how to make LTRIM one?

public static function rtrim(string:String):String
{
return string.replace(/\s+$/,"");
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

垂暮老矣 2024-07-20 08:53:10
public static function ltrim(string:String):String {
    return string.replace(/^\s+/,"");
}

警告:未经测试! 请在此处查找 Flex 3.0 文档。 这与您所拥有的完全相似,只是我们使用不同的元字符来指定我们要开始从开始(^)而不是从结束($)开始。 \s 后面的 + 告诉模式匹配一​​个或多个空格。

public static function ltrim(string:String):String {
    return string.replace(/^\s+/,"");
}

Caveat: Untested! Look up the flex 3.0 documentation here. This is exactly similar to what you have, except that we use a different metacharacter to specify that we want to start searching for whitespaces (\s -- another metacharacter) from the begining(^) instead of from the end($). The + after \s tells the pattern matches to grok one or more whitespaces.

心舞飞扬 2024-07-20 08:53:10

与其重新发明轮子,为什么不使用 Adob​​e as3corelib 库中的 StringUtil 类

出于兴趣,as3corelib 定义了它的修剪函数,如下所示:

public static function trim(input:String):String
{
    return StringUtil.ltrim(StringUtil.rtrim(input));
}

public static function ltrim(input:String):String
{
    var size:Number = input.length;
    for(var i:Number = 0; i < size; i++)
    {
        if(input.charCodeAt(i) > 32)
        {
            return input.substring(i);
        }
    }
    return "";
}

public static function rtrim(input:String):String
{
    var size:Number = input.length;
    for(var i:Number = size; i > 0; i--)
    {
        if(input.charCodeAt(i - 1) > 32)
        {
            return input.substring(0, i);
        }
    }
    return "";
}

Instead of re-inventing the wheel, why not just use the StringUtil class from Adobe's as3corelib library?

Out of interest, as3corelib defines it's trim functions as follows:

public static function trim(input:String):String
{
    return StringUtil.ltrim(StringUtil.rtrim(input));
}

public static function ltrim(input:String):String
{
    var size:Number = input.length;
    for(var i:Number = 0; i < size; i++)
    {
        if(input.charCodeAt(i) > 32)
        {
            return input.substring(i);
        }
    }
    return "";
}

public static function rtrim(input:String):String
{
    var size:Number = input.length;
    for(var i:Number = size; i > 0; i--)
    {
        if(input.charCodeAt(i - 1) > 32)
        {
            return input.substring(0, i);
        }
    }
    return "";
}
离不开的别离 2024-07-20 08:53:10

哇,认真的吗? 您正在使用正则表达式从字符串末尾删除恒定的字符序列? 真的吗? 我不了解 Actionscript/Flex,但这不是可行的方法。 经过快速谷歌搜索后,我找到了一个解决方案,它可能或可能不是更有效率。

Wow, seriously? You're using regular expressions to remove a constant sequence of characters from the ends of a string? Really? I don't know Actionscript/Flex, but this isn't the way to go. After a quick google I found a solution which may or may not be more efficient.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文