-2

我究竟做错了什么?我没有收到任何错误消息,但它无法正常工作 -

代码部分:

    int n = Convert.ToInt32(args.Content);
    if (n >= 10000)
        n = (int) (n - (n * 0.85));
    return n.ToString();

仅当我评论代码的前一部分时才有效:

    Match match = Regex.Match(args.Content, "ca.*?2013", RegexOptions.IgnoreCase);  
    if (match.Success)
        args.Content = match.Groups[1].Value + "Aktl.";
    return args.Content;

贝娄是完整的脚本:

using System;
using System.Text.RegularExpressions;
using VisualWebRipper.Internal.SimpleHtmlParser;
using VisualWebRipper;
public class Script
{
    //See help for a definition of WrContentTransformationArguments.
    public static string TransformContent(WrContentTransformationArguments args)
    {
        try
        {
            //Place your transformation code here.
            //This example just returns the input data

            Match match = Regex.Match(args.Content, "ca.*?2013", RegexOptions.IgnoreCase);  
            if (match.Success)
                args.Content = match.Groups[1].Value + "Aktl.";
            return args.Content;
            int n = Convert.ToInt32(args.Content);
            if (n >= 10000)
                n = (int) (n - (n * 0.85));
            return n.ToString();
        }
        catch(Exception exp)
        {
            //Place error handling here
            args.WriteDebug("Custom script error: " + exp.Message);
            return "Custom script error";
        }
    }
}
4

2 回答 2

2

我认为你需要:

        if (match.Success)
        {
            args.Content = match.Groups[1].Value + "Aktl.";
            return args.Content;
        }

在:

        if (match.Success)
            args.Content = match.Groups[1].Value + "Aktl.";
        return args.Content;

return语句总是被执行并使其余代码无法访问。条件表达式 - if(...)- 不带括号仅包括if检查后的下一条语句,return始终执行该方式。

于 2013-02-11T08:05:11.587 回答
0
return args.Content;

您正在从函数返回此行,控件不会低于该值。

于 2013-02-11T08:04:43.100 回答