第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在C#中將字符串中的某個(gè)數(shù)字相乘

如何在C#中將字符串中的某個(gè)數(shù)字相乘

C#
泛舟湖上清波郎朗 2023-07-09 15:25:01
我正在 winform 中制作一個(gè)小工具,使我的工作更輕松一些。我的目標(biāo)是制作一個(gè)可以更改每個(gè)索引之前的數(shù)字的工具。這是一組具有不同索引的項(xiàng)目:1695、1696 等...我想將每個(gè)索引之前的數(shù)字乘以 2:輸入:(group (index 2589) (item (6 1695 0) (12 1696 0) (18 1697 0) (24 1698 0)))輸出:(group (index 2589) (item (12 1695 0) (24 1696 0) (36 1697 0) (48 1698 0)))如何以一種好的方式分割字符串以定位索引之前的數(shù)字?
查看完整描述

1 回答

?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊

您可以使用正則表達(dá)式來(lái)執(zhí)行此操作。例如:


Regex regex = new Regex(@"(?<=\()(\d+)(?= \d+ \d+\))");

var input = "(group (index 2589) (item (6 1695 0) (12 1696 0) (18 1697 0) (24 1698 0)))";

// (group (index 2589) (item (12 1695 0) (24 1696 0) (36 1697 0) (48 1698 0)))

var output = regex.Replace(input, (match) => (int.Parse(match.Value) * 2).ToString());

這里的正則表達(dá)式模式具有三個(gè)組件,用于隔離要相乘的數(shù)字。


(?<=\()是積極的向后看,尋找開括號(hào)。


(\d+)匹配括號(hào)中的第一個(gè)數(shù)字 - 一個(gè)或多個(gè)數(shù)字


(?= \d+ \d+\))是正向前查找,它搜索一個(gè)空格、一個(gè)或多個(gè)數(shù)字,后跟另一個(gè)空格、另一個(gè)數(shù)字和右括號(hào)。


正則表達(dá)式的匹配結(jié)果只是索引號(hào),因此我們可以使用MatchEvaluator委托將其相乘并替換為原始字符串。


查看完整回答
反對(duì) 回復(fù) 2023-07-09
  • 1 回答
  • 0 關(guān)注
  • 150 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)