Sono abbastanza nuovo nell'usare le espressioni regolari e, in base ad alcuni tutorial che ho letto, non riesco a ottenere questo passaggio nel mio Regex.Replace formattato correttamente.Espressione regolare sostituisci in C#
Ecco lo scenario su cui sto lavorando ... Quando estraggo i miei dati dalla casella di riepilogo, desidero formattarlo in un formato simile a CSV e quindi salvare il file. L'utilizzo dell'opzione Sostituisci è la soluzione ideale per questo scenario?
Prima dell'esempio di formattazione di espressioni regolari.
FirstName LastName Salary Position
-------------------------------------
John Smith $100,000.00 M
formato proposto dopo un'espressione regolare sostituire
John Smith,100000,M
corrente uscita di stato formattazione:
John,Smith,100000,M
* Nota - c'è un modo posso sostituire la prima virgola con uno spazio bianco?
frammento del mio codice
using(var fs = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.Write))
{
using(var sw = new StreamWriter(fs))
{
foreach (string stw in listBox1.Items)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine(stw);
//Piecing the list back to the original format
sb_trim = Regex.Replace(stw, @"[$,]", "");
sb_trim = Regex.Replace(sb_trim, @"[.][0-9]+", "");
sb_trim = Regex.Replace(sb_trim, @"\s", ",");
sw.WriteLine(sb_trim);
}
}
}
Con la vostra espressione regolare '44.66' sarebbe sostituito da' 44' – Anirudha
appena ri-pubblicato la mia dichiarazione ... Sto convertendo 100.000,00 a 100000.Sì, sto lasciando i centesimi fuori da questa equazione quando sto scrivendo di nuovo al formato CSV. – Curtis
Si prega di provare a non usare tanti font in grassetto - Ho rimosso tutti e anche corretto le chiamate di Smock incomplete, quindi il codice sembra ok. –