【问题标题】:AS2 - How to remove character after specyfic characterAS2 - 如何在特定字符后删除字符
【发布时间】:2016-05-11 06:05:17
【问题描述】:

我有这样的变量AA55BBB(888)1234567890P1 如何去除)P之间的字符?

【问题讨论】:

    标签: flash actionscript adobe actionscript-2


    【解决方案1】:

    通常您会使用正则表达式来执行此操作,但 AS2 不支持它们。因此,另一种(老式)解决方案是将字符串拆分为这些字符并重新加入

    这假设您的字符串中只有一个“)”和一个“P”:

    var myString:String = "AA55BBB(888)1234567890P1";
    
    // this will result in an Array like ["AA55BBB(888", "1234567890P1"];
    var firstSplit:Array = myString.split(")");
    
    var firstPart:String = firstSplit[0]; // "AA55BBB(888"
    var secondPart:String = firstSplit[1]; // "1234567890P1"
    
    var secondSplit:Array = secondPart.split("P"); // ["1234567890","1"]
    
    secondPart = secondSplit[1]; //"1"
    
    // since we have removed the ")" and "P" on split, put them back in
    var newString:String = firstPart + ")P" + secondPart;
    
    trace(newString); // "AA55BBB(888)P1"
    

    【讨论】:

    • O soo Coool :) 但现在它诞生了新问题。我的代码的第一部分是 E123XABCD。这始终是相同数量的字符如何将它们分开成为变量 E 123 X AB CD
    • 如果你的数字和字母总是在同一个地方,那么在这里使用 substr 可能会更容易——它会返回字符串的一部分(从 startindex 开始的 X 字符)。例如, var part:String = firstPart.substr(1,3) 将返回部分“123”,firstPart.substr(5,2) 将返回“AB”。注意 startIndex 以 0 开头(字符串的第一个字符在位置 0)
    • 效果很好!我用我的语言写作。 "chodzi zajebiście w ch*j"​​ ;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-12
    • 2020-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多