簡體   English   中英

如何僅返回帶有符號,字母的大字符串中的數字,以及使用C#當然返回數字

[英]How can I return only the digits from a large string with symbols, letters and of course digits with C#

我在這里有這段代碼,我需要返回僅包含數字的args.Content (我的輸入數據)並刪除其余字符。 我一直在嘗試使用正則表達式進行很多操作,但是對我來說卻沒有用。 我幾乎不了解C#,我真的需要這個網站的程序設計人員的幫助。

using System;
using VisualWebRipper.Internal.SimpleHtmlParser;
using VisualWebRipper;
public class Script
{

    public static string TransformContent(WrContentTransformationArguments args)
    {
        try
        {
            //Place your transformation code here.
            //This example just returns the input data
            return args.Content;
        }
        catch(Exception exp)
        {
            //Place error handling here
            args.WriteDebug("Custom script error: " + exp.Message);
            return "Custom script error";
        }
    }
}

希望你能幫忙

只需刪除不是數字的任何內容即可。 有一個用於數字的預定義字符類: \\d ,否定符是\\D

所以您的正則表達式就是:

\D+

在您的C#代碼中,它將類似於

return Regex.Replace(args.Content, @"\D+", "");

當然不是最有效的,但是,哦,我忍不住要執行一些LINQ:

var digitsOnly = new string(args.Content.Where(c => char.IsDigit(c)).ToArray())
StringBuilder builder = new StringBuilder();
Regex regex = new Regex(@"\d{1}");
MatchCollection matches = regex.Matches(args.Content);
foreach (var match in matches)
{
    builder.Append(match.ToString());
}
return builder.ToString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM