我輸入:刪除一切
string input = "0173706W(L31T*am)ABOVEPOVERTYLINE(APL)"
所需的輸出:
string outpput = "0173706"
嘗試截至目前
Regex.Replace(EditedFeild3, "[^0-9]", "");
此輸入樣本僅僅是一個例子來自許多不同的執行。
所以,我正在尋找一個正則表達式的任何字母或特殊字符發現
我輸入:刪除一切
string input = "0173706W(L31T*am)ABOVEPOVERTYLINE(APL)"
所需的輸出:
string outpput = "0173706"
嘗試截至目前
Regex.Replace(EditedFeild3, "[^0-9]", "");
此輸入樣本僅僅是一個例子來自許多不同的執行。
所以,我正在尋找一個正則表達式的任何字母或特殊字符發現
解決使用
EditedFeild3 = new string(EditedFeild3.TakeWhile(Char.IsDigit).ToArray());
希望它可以幫助別人。
後,您可以使用正則表達式如下
(.*?)[a-zA-Z].*
^^^^^ : Capture lazily
^^^^^^^^^^ : Match anything after first letter
要刪除第一個字母后,一切都將刪除一切,更換字符串由$1
- 第一個被捕獲的組。
您還可以使用
^([^a-zA-Z]*)
,並獲得第一捕獲組串。
static void Main(string[] args)
{
string name = "0173706W(L31T*am)ABOVEPOVERTYLINE(APL)";
name = name.Substring(0, name.IndexOf('6') + 1);
Console.WriteLine(name);
}
添加一些解釋 – Tushar
我不希望捕捉到它,我想刪除它 –
@ArijitMukherjee嘗試'Regex.Replace(EditedFeild3, 「」 「[A-ZA-Z]。*」);' – Tushar
我很好已經使用'EditedFeild3 =新字符串(EditedFeild3.TakeWhile(Char.IsDigit).ToArray())解決了它;' –