2011-08-31 41 views
0

'世界你好 「你好」'。代替(正則表達式, 「HELLO」) => 'HELLO世界 「你好」'寫一個正則表達式來替代像c宏一樣的字符串?

如何寫這個正則表達式僅替代 '你好',這是不是在報價?

+0

從那個語法我猜你使用Javascript。你應該用你使用的編程語言來標記你的問題,因爲並非所有的正則表達式引擎都是平等的。 – Paulpro

+1

你的語言程序是什麼? – Kakashi

+0

這是一個很難用一般情況下的正則表達式解決的經典問題。你需要能夠處理雙引號字符串中的雙引號(例如,反斜線轉義)嗎?外? – tripleee

回答

0

假設你正在使用Javascript:

'hello world "hello"'.replace(/($|[^"])hello(?!")/g,'$1HELLO'); 
+0

如果在hello的任何一方有報價,例如'hello hello「hello''會變成'hello hello hello'',而OP希望中間的hello被替換,這個案例。 – Dani