2011-07-06 25 views
0

我是新來的正則表達式和最近面臨這個問題追加和預先考慮的串「#」僅使用正則表達式

追加,只使用一個字符串前面加上「#」正則表達式

在這種假設我們有一個字符串,如Hello my name is #First Name# @[email protected]

現在我必須追加並在此使用鄰前面加上# NLY正則表達式因此,它將成爲

#Hello my name is #First Name# @[email protected]#

感謝

+0

請告訴我,沒有人實際使用這個作爲一個面試問題。 – Carson63000

+0

@ Carson63000我們的一個客戶問我的同事這個​​問題,他發展 –

回答

3

var res = Regex.Replace(input, @"^(.*)$", "#$1#");

+0

之前的「僅使用正則表達式」 – zerkms

+0

嗯,試圖'$ 1'時,它並沒有爲我工作 - 所以使用代表來代替:-S肯定是更好,但它是一個測試任務;-)(儘管它是沒有意義的,確實)+1 – zerkms

+0

@zerkms,第一個變種刪除;-) –

1

相同的思路舒克,但少了幾分詳細

var res = Regex.Replace(input, ".+", "#$0#"); 

由於正則表達式是由默認的貪婪,.+將捕獲整個字符串。 $0捕捉整個比賽,所以在這種情況下沒有理由使用明確的捕捉。

+0

優雅,我喜歡它 – cfogelberg

相關問題