簡體   English   中英

特殊字符的正則表達式

[英]Regular Expression for special characters

我正在嘗試對字符串進行正則表達式替換,但它並不像我希望的那樣順利。 我從在線工具構建了這個正則表達式,測試顯示了我的期望,但是當我運行我的代碼時,我沒有得到預期的結果。

我的代碼:

  Regex reg = new Regex(@"[^a-zA-Z0-9-]$");
                string docName = t.Title.ToLower();
                reg.Replace(docName, "-");

我希望通過這樣一個字符串: "hey! thsi is am@&4$amazing!"
我最終會說: "hey- thsi is am--4-amazing-

我在某處出錯了嗎?

[^a-zA-Z0-9-]$

            ^^

$斷言一行的結尾位置

因此,您只會在行結束前替換特殊字符。

只是用

[^a-zA-Z0-9-]

此外,這將取代甚至space 。更好地使用

[^a-zA-Z0-9 -]

見演示。

https://regex101.com/r/sJ9gM7/40

暫無
暫無

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

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