我有一個字符串形式爲「123456789」。 在屏幕上顯示它時,我想將其顯示爲123-456-789。 請讓我知道如何添加「 - 」每3個數字。 在此先感謝。在C#中的字符串中添加' - '
2
A
回答
5
我會繼續前進,給Regex
基礎的解決方案:
string rawNumber = "123456789";
var formattedNumber = Regex.Replace(rawNumber, @"(\d{3}(?!$))", "$1-");
該正則表達式分解如下:
( // Group the whole pattern so we can get its value in the call to Regex.Replace()
\d // This is a digit
{3} // match the previous pattern 3 times
(?!$) // This weird looking thing means "match anywhere EXCEPT the end of the string"
)
的"$1-"
替換字符串意味着每當對上述圖案的匹配,則用相同的($ 1部分),接着是-
替換它。因此,在"123456789"
中,它將匹配123
和456
,但不匹配789
,因爲它位於字符串的末尾。然後用123-
和456-
替換它們,給出最終結果123-456-789
。
+0
非常感謝:) – Shweta
6
您可以使用string.Substring
:
s = s.Substring(0, 3) + "-" + s.Substring(3, 3) + "-" + s.Substring(6, 3);
或正則表達式(ideone):
s = Regex.Replace(s, @"\d{3}(?=\d)", "$0-");
0
您可以使用循環也如果字符串長度不固定到9倍的數字如下
string textnumber = "123456789"; // textnumber = "123456789" also it will work
string finaltext = textnumber[0]+ "";
for (int i = 1; i < textnumber.Length; i++)
{
if ((i + 1) % 3 == 0)
{
finaltext = finaltext + textnumber[i] + "-";
}
else
{
finaltext = finaltext + textnumber[i];
}
}
finaltext = finaltext.Remove(finaltext.Length - 1);
相關問題
- 1. 無法在C++中添加字符串
- 2. 在C++中添加兩個字符串
- 3. 添加使用字符串^在C++中
- 4. 添加字符串在C#
- 5. 在C字符添加到字符串
- 6. 在C中添加一個字符串的字符
- 7. 在C++中的字符串之間添加一個字符
- 8. 在字符串中間添加字符
- 9. 在字符串中間添加字符
- 10. 如何將字符串添加到字符串數組中C
- 11. C++在字符串數組中添加任何字符
- 12. 在字符串(或Chararray)中添加一個字符c#
- 13. 在C#中的字符串之前添加@符號
- 14. 在字符串中添加換行符
- 15. C#加減字符串中的字符
- 16. 添加的字符串C#的數字
- 17. 在C++中添加一個字符串的所有數字
- 18. Java在字符串中添加數字
- 19. 在字符串中添加數字
- 20. jQuery在字符串中添加數字
- 21. 將一個換行符添加到C中的字符串中#
- 22. 將字符串添加到C中的字符指針
- 23. 如何添加字符到C#中的字符串
- 24. PHP中添加字符串
- 25. 在Linq中添加arraylist的字符串
- 26. 在PHP中的字符串內添加字符串
- 27. 在字符串中添加字符串的PHP引用
- 28. 添加在字符串中的整數在objective-c
- 29. 在C++中添加兩個c字符串
- 30. 在Structure C++中添加值C字符串
這是百達9個數字,也可以是無限的? – Gleeb